#java #validation #inheritance #nested
#java #проверка #наследование #вложенный
Вопрос:
У меня есть структура классов Java как встроенная :
База классов
Класс Base_A расширяет базу
@NotNull
List<A_item> items
Класс Base_B расширяет базу
@NotNull
List<B_item> items
Базовый элемент класса
Класс A_item расширяет Base_item
@NotNull
start_date
Класс B_item расширяет Base_item
@NotNull
quantity
Проблема: когда я использую javax validator.validate(Base_A), он проверяет только ненулевые «элементы». Но это не выдает ошибку, если «start_date» отсутствует для объекта A_item в списке «элементы».
Есть ли способ, которым я могу решить эту проблему (без перебора списка <A_items> и повторной проверки A_item)
Комментарии:
1. Привет, Пинал Шах, ты исправил свою проблему? Не могли бы вы просмотреть мой ответ?
Ответ №1:
Пожалуйста, попробуйте добавить аннотацию @Valid поверх аннотации @NotNull Пожалуйста, смотрите Следующий пример:
@Valid
@NotNull
List<A_item> items
Более того, если вы используете list, я хотел бы рекомендовать пометить его аннотацией @NotEmpty