i am working on a JSF Projekt with Glassfish. My validation works well but i dont become a custom error message.
//Class = User, package = devteam
开发者_StackOverflow社区@NotEmpty @Pattern(".+@.+\\.[a-z]+")
private String emailAddress;
My ValidationMessages.properties is in the WEB-INF folder with this content:
devteam.User.emailAddress=Invalid e-mail address
Thank you.
You are having two problems here. First, the location of the ValidationMessages.properties file. It has to be in the root of the classpath, so move it into WEB-INF/classes Your second problems are the message keys. The default message key for the Pattern constraint for example is {javax.validation.constraints.Pattern.message}. In your case you want to specify the message parameter in the @Pattern annotation:
@Pattern(regexp=".+@.+\\.[a-z]+", message="{devteam.User.emailAddress}")
You should put the file in the root, then
devteam.User.emailAddress[Pattern] = "Your message here"
notice [Pattern] to specify the message to output when the Pattern has a constraint violation. this makes it easier to maintain in my opinion vs having the messages like
@Patterh(regexp ="xx", message = "your message here")
for every setter
精彩评论