Я создал специальный валидатор ограничений, который работает над списком объектов. К сожалению, похоже, что он не вызван, он работал, когда у меня был класс-оболочка, содержащий список с аннотацией в списке.Пользовательский весовой валидатор не вызывается
Это код, который работал прекрасный
public class wrapper {
@ValidMyObjectList
List<MyObject> myObjects;
...
}
Но теперь я избавилась от класса обертки и добавил аннотацию к параметру в методе контроллера.
Вот контроллер
@RequestMapping(value = "", method = RequestMethod.POST)
public List<MyObject> stopCheque(
@ValidMyObjectList @RequestBody final List<MyObject> myObjects,
final HttpServletResponse httpServletResponse) {
....
}
Вот ограничение аннотацию
@Constraint(validatedBy = MyObjectListValidator.class)
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.FIELD, ElementType.PARAMETER })
public @interface MyObjectList {
Class<?>[] groups() default {};
String message() default "";
Class<? extends Payload>[] payload() default {};
}
И часть валидатора сама
public class MyObjectListValidator implements
ConstraintValidator<MyObjectList, List<MyObject>> {
@Override
public void initialize(final MyObjectList myObjectList) {
}
@Override
public boolean isValid(final List<MyObjectList> myObjectLists, final ConstraintValidatorContext cxt) {
...
}
был бы весьма признателен за любую помощь. Благодаря