Как интернационализировать @Pattern(regexp="(^$|[0-9]{10})") в проверке бина?
Я использую проверку bean-компонентов для проверки своей сущности, она отлично работает в разных локалях и показывает сообщения об ошибках для конкретного региона, но я хочу интернационализировать поле 'ContactNo' в соответствии с регионом, как мои сообщения об ошибках @NotBlank(message="{contactNo.size}")
,
Так как добиться
@Pattern(regexp="(^$|[0-9]{10})")
private String contactNo;`
где значение регулярного выражения изменяется в зависимости от региона?
1 ответ
Значение для regexp
Атрибут должен быть постоянным, т.е. он должен быть доступен во время компиляции. Таким образом, либо он должен быть строковым литералом, как вы делаете сейчас, либо выводиться в static final
переменная.
Я думаю, что вам нужно реализовать в пользовательском ограничении Bean Validation.