2010-02-10 55 views
4

我正在与Glassfish一起开发JSF项目。我的验证效果很好,但我不会成为自定义错误消息。.properties文件中的Bean验证和错误消息

//Class = User, package = devteam 
@NotEmpty @Pattern("[email protected]+\\.[a-z]+") 
private String emailAddress; 

我ValidationMessages.properties与此内容的WEB-INF文件夹:

devteam.User.emailAddress=Invalid e-mail address 

谢谢。

回答

6

这里有两个问题。首先,ValidationMessages.properties文件的位置。它必须位于类路径的根目录中,因此将其移入WEB-INF /类 您的第二个问题是消息键。例如,Pattern约束的默认消息密钥是{javax.validation.constraints.Pattern.message}。你的情况要指定在@Pattern注释的消息参数:

@Pattern(regexp="[email protected]+\\.[a-z]+", message="{devteam.User.emailAddress}") 
+0

谢谢。这工作greate – ThreeFingerMark 2010-02-10 20:12:59

+0

我不使用tomcat,所以我不能将属性文件添加到WEB-INF /类。相反,我在eclipse中做了一个scala项目,但我无法使用它来使用属性文件。你会在标准的eclipse项目中添加属性文件? – Marius 2013-04-01 17:41:13

+0

@Marius,档案根目录 – Hardy 2013-04-02 08:34:15

1

你应该把文件中的根,然后

devteam.User.emailAddress[Pattern] = "Your message here" 

通知[图案]指定消息在模式违反约束时输出。 这使得它更容易在我看来,保持VS具有类似于

@Patterh(regexp ="xx", message = "your message here") 

消息为每二传手