Проверка компонента и сообщения об ошибках в файле .properties
-
19-09-2019 - |
Вопрос
я работаю над проектом JSF с Glassfish.Моя проверка работает хорошо, но я не превращаюсь в собственное сообщение об ошибке.
//Class = User, package = devteam
@NotEmpty @Pattern(".+@.+\\.[a-z]+")
private String emailAddress;
Мой ValidationMessages.properties находится в папке WEB-INF со следующим содержимым:
devteam.User.emailAddress=Invalid e-mail address
Спасибо.
Решение
У вас здесь две проблемы.Во-первых, расположение ValidationMessages.properties файл.Он должен находиться в корне пути к классам, поэтому переместите его в WEB-INF/классыВаша вторая проблема — это ключи сообщений.Например, ключ сообщения по умолчанию для ограничения шаблона: {javax.validation.constraints.Pattern.message}.В вашем случае вы хотите указать параметр сообщения в @Шаблон аннотация:
@Pattern(regexp=".+@.+\\.[a-z]+", message="{devteam.User.emailAddress}")
Другие советы
Вам следует положить файл в корень, затем
devteam.User.emailAddress[Pattern] = "Your message here"
обратите внимание [Шаблон], чтобы указать сообщение, которое будет выводиться, когда шаблон нарушает ограничения.на мой взгляд, это облегчает поддержку по сравнению с сообщениями типа
@Patterh(regexp ="xx", message = "your message here")
для каждого сеттера