public boolean isValid(Group group, ConstraintValidatorContext constraintValidatorContext) { if ( group == null ) { return true; } constraintValidatorContext.disableDefaultConstraintViolation(); for ( int index = 0; index < group.persons.size(); index++ ) { Person person = group.persons.get( index ); if ( !group.gender.equals( person.gender ) ) { constraintValidatorContext .buildConstraintViolationWithTemplate( "constraints.CompatiblePersons.gender.message" ) .addNode( "persons" ) .addNode( null ).inIterable().atIndex( index ) .addConstraintViolation(); return false; } } return true; } }
@SuppressWarnings("deprecation") @Override public boolean isValid(Group group, ConstraintValidatorContext constraintValidatorContext) { if ( group == null ) { return true; } constraintValidatorContext.disableDefaultConstraintViolation(); for ( int index = 0; index < group.persons.size(); index++ ) { Person person = group.persons.get( index ); if ( !group.gender.equals( person.gender ) ) { constraintValidatorContext .buildConstraintViolationWithTemplate( "constraints.CompatiblePersons.gender.message" ) .addNode( "persons" ) .addNode( null ).inIterable().atIndex( index ) .addConstraintViolation(); return false; } } return true; } }
/** * Adds a violation with the field in the context. * @param context the context * @param fieldName the field name. */ @VisibleForTesting void addViolation(ConstraintValidatorContext context, String fieldName) { context.disableDefaultConstraintViolation(); context.buildConstraintViolationWithTemplate(context.getDefaultConstraintMessageTemplate()) .addPropertyNode(fieldName) .inIterable() .addConstraintViolation(); }
.addPropertyNode("metadata") .addPropertyNode("name") .inIterable().atIndex(i) .addConstraintViolation(); return false;
.inIterable() .addBeanNode() .addConstraintViolation(); .inIterable().atIndex( 84 ) .addBeanNode() .addConstraintViolation(); .inIterable().atKey( "AnotherKey" ) .addBeanNode() .addConstraintViolation();
@Override public boolean isValid(String value, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addPropertyNode( "myNode1" ) .addPropertyNode( "myNode2" ) .inContainer( Map.class, 1 ) .inIterable() .atKey( "key" ) .addBeanNode() .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addPropertyNode( "myNode3" ) .inContainer( List.class, 0 ) .inIterable() .atIndex( 3 ) .addBeanNode() .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addPropertyNode( "myNode4" ) .inContainer( Optional.class, 0 ) .addPropertyNode( "myNode5" ) .addConstraintViolation(); return false; } }
.addPropertyNode( "myNode4" ) .addPropertyNode( "myNode5" ) .inIterable() .addConstraintViolation(); .addPropertyNode( "myNode6" ) .addPropertyNode( "myNode7" ) .inIterable().atIndex( 42 ) .addConstraintViolation(); .addPropertyNode( "myNode8" ) .addPropertyNode( "myNode9" ) .inIterable().atKey( "Foo" ) .addConstraintViolation(); .addPropertyNode( "myNode10" ) .addPropertyNode( "myNode11" ) .inIterable() .addPropertyNode( "myNode12" ) .addConstraintViolation();
@Override public boolean isValid(java.lang.Object[] value, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addParameterNode( 0 ) .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addParameterNode( 0 ) .addBeanNode() .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addParameterNode( 0 ) .addPropertyNode( "myNode1" ) .inIterable().atIndex( 23 ) .addBeanNode() .addConstraintViolation(); return false; } }
@SuppressWarnings("deprecation") @Override public boolean isValid(MyObject value, ConstraintValidatorContext context) { context.disableDefaultConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addNode( "myNode1" ) .addConstraintViolation(); context.buildConstraintViolationWithTemplate( context.getDefaultConstraintMessageTemplate() ) .addNode( "myNode2" ) .addNode( "myNode3" ).inIterable().atKey( "key" ) .addConstraintViolation(); return false; } }