JSF 2.0,Bean验证和标签

Alf*_*Alf 2 bean-validation jsf-2

使用bean验证时,如何在JSF错误消息中显示字段标签?

<h:messages/>
<h:inputText label="Username" value="#{myBean.username}" />
...   
Run Code Online (Sandbox Code Playgroud)

 

public class MyBean {
    @NotNull
    private String username;
    ...
}
Run Code Online (Sandbox Code Playgroud)

如果未提交用户名,则仅显示"不能为空",并且没有字段引用.

Gun*_*nar 7

要在错误消息中显示相关组件的标签,请在应用程序的资源束中为属性javax.faces.validator.BeanValidator.MESSAGE定义一个新值,如下所示:

javax.faces.validator.BeanValidator.MESSAGE={1}: {0}
Run Code Online (Sandbox Code Playgroud)

占位符{0}引用由Bean Validation运行时创建的错误消息,{1}指的是组件标签.更多信息可以在JSF 2规范中找到.第3.5.6.3节.