Проверка аннотации и файла свойств - PullRequest
6 голосов
/ 28 февраля 2012

у меня есть поле в моем весеннем бине (управляемый бин с jsf), и я проверяю его длину с помощью аннотации @Size, используя проверку бина JSR303 следующим образом:

@Size(min = 7, max = 15, message = "{password.range}")
private String newPassword;

и мне было интересно, как прочитать минимальное и максимальное значения из файла свойств, пожалуйста, сообщите.

1 Ответ

5 голосов
/ 28 февраля 2012

Новый ответ

Это невозможно со стандартными валидаторами JSR 303. Проблема в том, что значения в аннотациях являются значениями времени компиляции, но значения в свойствах доступны только во время выполнения.

Конечно, вы можете написать свои собственные Валидаторы JSR-303, которые читают значение из файла свойств во время проверки.

Чтобы вы могли использовать его следующим образом:

@ MySize (minKey = "password.min", maxKey = "password.max", message = "{password.range}")

MySizeValidator использует minKey, чтобы прочитать это значение из файла свойств, а затем проверить текущее значение.

...