Version 11

    Frameworks integrating with Bean Validation

    Here  is a list of frameworks integrating with Bean Validation.

    Presentation layer

    • JSF 2 integrates natively and validates data from forms according to the constraints of the  property the value will be populated in.
    • Wicket has a framework providing Bean Validation integration. Check it out here.
    • Tapestry also integrates with Bean Validation.  Check it out here  for the basic integration and here  for an additional client-side validation mode.
    • Spring 3 MVC - see validation-beanvalidation
    • Metawidget is a 'smart User Interface widget' that populates itself, at runtime, with UI components to match the properties of your business objects. Metawidget reads Bean Validation annotations and generates forms with widgets that are pre-configured for minimum/maximum values, lengths etc.
    • The Google Web Toolkit (GWT) provides experimental support for Bean Validation, in particular constraints can be validated on the client side. Learn more in the GWT wiki.

    Persistence layer

    • JPA 2 has a native integration: every time an entity is created, updated (and optionally deleted), the validation of a given validation group is performed. See this post for an example using Hibernate/EclipseLink as JPA providers.
    • Hibernate Core 3.5 and above: on  top of the JPA 2 integration, Hibernate Core generates the database  schema taking the constraint annotations into consideration. For  example, a @NotNull @Size(max=50) will create a column of type  VARCHAR(50) NOT NULL.