только на уровне родительского класса. На уровне подкласса не работает. Вопрос: Как сделать так, чтобы валидация работает и проверяеть весь граф объектов?
На прдклассах должно работать
На вложеные объекты вешай @Valid
у меня conditional validation. поэтому это не помогает.((
А детальнее можно, что именно по кондишену?
Тогда дополнительно ещё и group (если правильно понял)
https://docs.jboss.org/hibernate/validator/5.0/reference/en-US/html/chapter-bean-constraints.html#section-constraint-inheritance
@Getter @Setter @Conditional(selected = "action", values = {"1"}, required = {"first", "bir"}) @Conditional(selected = "action", values = {"2"}, required = {"second", "viber"}) public class ExportLocationDTO { private String action; private String first; private String second; private String bir; private String ikki; private Viber viber; } @Getter @Setter @Conditional(selected = "action", values = {"1"}, required = {"a"}) @Conditional(selected = "action", values = {"2"}, required = {"b"}) public class Viber { private String action; private String a; private String b; }
это пример. это ещё можеть продолжит 3-4 уровня. на классе Viber моя аннотация не работаеть.
Прям больно. Сделай уже тогда одну валидациию на весь объект и там разбирай по рулам. Но вообще @Valid то что тебе нужно
@Valid'у можно добавить condition?
🤷♂️ не знаю, я бы такое не делал. Это уже метапрограммирование какое-то. Сделай по другому, но проще
У Validated есть как раз группы.
А вообще, вот решение получше.
Обсуждают сегодня