4

我正在使用 Glassfish 开发 JSF Projekt。我的验证效果很好,但我没有成为自定义错误消息。

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

我的 ValidationMessages.properties 位于包含以下内容的 WEB-INF 文件夹中:

devteam.User.emailAddress=Invalid e-mail address

谢谢你。

4

2 回答 2

6

你在这里有两个问题。首先,ValidationMessages.properties文件的位置。它必须在类路径的根目录中,所以将它移动到WEB-INF/classes 你的第二个问题是消息键。例如,模式约束的默认消息键是{javax.validation.constraints.Pattern.message}。在您的情况下,您想在@Pattern注释中指定消息参数:

@Pattern(regexp=".+@.+\\.[a-z]+", message="{devteam.User.emailAddress}")
于 2010-02-10T14:01:37.970 回答
1

您应该将文件放在根目录中,然后

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

注意 [Pattern] 指定当 Pattern 违反约束时要输出的消息。在我看来,这使得维护起来比拥有像这样的消息更容易

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

对于每个二传手

于 2010-06-01T11:30:01.230 回答