Release Notes: This release adds support for declaring constraints for nested properties via a new target attribute on constraint annotations. It adds caching of compiled OGNL expressions and compiled MVEL expressions.
Release Notes: This release adds Validator.reportConstraintViolation, allowing check implementations to generate more than one constraint violation. It adds @Constraint.List annotations that can hold multiple constraint annotations of the same type. It adds @Email(allowPersonalName=true/false). It adds add/remove CheckInitializationListener methods to AnnotationsConfigurer and XMLConfigurer. It adds BeanInjectingCheckInitializationListener, allowing Spring dependencies to be injected into Check instances. It adds support for constraints specified for method parameters at interface level: @Guard(inspectInterfaces=true).
Release Notes: JPAAnnotationsConfigurer now also interprets annotated getter methods. @Size now checks the length of the value's String representation if the value is not a map, a list, or an array. This release adds @AssertNull and @Digits constraints. It adds BeanValidationAnnotationsConfigurer, which allows validation of JSR303 built-in constraint annotations. It implements [oval-Bugs-2907399]Žand adds MessageValueFormatter and Validator.setMessageValueFormatter().
Release Notes: This release adds support for conditional constraint activation via the when="" attribute. It adds a tolerance attribute to @Past and @Future. It adds @NotMatchPattern and ConstraintViolation.getCheckDeclaringContext(). It adds an appliesTo() attribute to constraints to control if and how validation should be applied to children of arrays, maps, and collections. It fixes bugs 2836116, 2821805, and 2799870.
Release Notes: This release adds an @Email constraint. It adds a Brazilian Portuguese translation of the constraint violation messages. It introduces an interface implemented by Validator for supporting easier mocking. It fixes several minor issues.
Release Notes: A constraint check exclusion feature that can be used for fine-grained deactivation of constraints has been added. @MatchPattern can now match against multiple patterns. Constraint configuration XSD has been added as a replacement for the DTD. ConstraintViolation now provides more details about the violated constraint (checkName, messageVariables, and messageTemplate). Support has been added for using Spring AOP to enable programming by contract for Spring managed beans. Usage of the probe mode feature has been greatly simplified.
Release Notes: Five new built-in constraints: @AssertURL, @InstanceOfAny, @MemberOf, @NotEqual, and @NotMemberOf. errorCode and severity can now be specified for constraints. Support for object-level constraints (compound constraints). Support for Ruby as a constraints expression language. Constraints violation messages have been translated into Chinese, Dutch, Hungarian, Italian, Norwegian, Portuguese, Romanian, Russian, Spanish, Swedish, and Turkish. Support for different logging frameworks/facades, including JDK logging, Log4J, and commons logging so far.
Release Notes: The constraint @NotBlank has been added. Support has been added for OGNL and MVEL as constraint expression languages.
Release Notes: This release adds support for interpreting EJB3 JPA annotations. All configuration classes are now serializable. Support has been added for ParaNamer for method parameter name resolving. There are various minor fixes.