Question

Je travaille sur un JSF Projekt avec Glassfish. Ma validation fonctionne bien, mais je ne deviennent un message d'erreur personnalisé.

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

Mon ValidationMessages.properties est dans le dossier WEB-INF avec ce contenu:

devteam.User.emailAddress=Invalid e-mail address

Merci.

Était-ce utile?

La solution

Vous rencontrez deux problèmes ici. Tout d'abord, l'emplacement du fichier ValidationMessages.properties . Il doit être à la racine du classpath, donc le déplacer dans WEB-INF / classes Votre deuxième problèmes sont les clés de message. La clé de message par défaut pour la contrainte de modèle par exemple est {} javax.validation.constraints.Pattern.message . Dans votre cas, vous voulez spécifier le paramètre de message dans @Pattern annotation:

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

Autres conseils

Vous devez mettre le fichier à la racine, puis

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

avis [Motif] pour spécifier le message à la sortie lorsque le motif a une violation de contrainte. cela rend plus facile à maintenir, à mon avis vs avoir les messages comme

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

pour chaque setter

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top