@Override public boolean isValid(List<String> list, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); boolean valid = true; for (int i = 0; i < list.size(); i++) { if ("X".equals(list.get(i))) { context.buildConstraintViolationWithTemplate(context.getDefaultConstraintMessageTemplate()).addBeanNode().inIterable().atIndex(i).addConstraintViolation(); valid = false; } } return valid; } }
@Override public boolean isValid(List<String> list, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); boolean valid = true; for (int i = 0; i < list.size(); i++) { if ("X".equals(list.get(i))) { context.buildConstraintViolationWithTemplate(context.getDefaultConstraintMessageTemplate()).addBeanNode().inIterable().atIndex(i).addConstraintViolation(); valid = false; } } return valid; } }
@Override public boolean isValid(List<PropertyConstraint> value, ConstraintValidatorContext context) { if(value == null) { return true; } Set<String> definedConstraints = Sets.newHashSet(); boolean isValid = true; for (int i = 0; i < value.size(); i++) { PropertyConstraint constraint = value.get(i); if (!definedConstraints.add(constraint.getClass().getName())) { context.buildConstraintViolationWithTemplate("CONSTRAINTS.VALIDATION.DUPLICATED_CONSTRAINT").addBeanNode().inIterable() .atIndex(i).addConstraintViolation(); isValid = false; } } return isValid; } }
.addBeanNode() .addConstraintViolation(); .addBeanNode() .inIterable() .addConstraintViolation(); .addBeanNode() .inIterable().atIndex( 42 ) .addConstraintViolation(); .addBeanNode() .inIterable().atKey( "Key" ) .addConstraintViolation();