Bean Validation

Welcome to the Bean Validation specification website. You will find information about the stable version 1.0 as well as version 1.1 currently being worked on.

What is Bean Validation

Bean Validation is a Java specification which:

  • provides a unified way of declaring and defining constraints on an object model.
  • defines a runtime engine to validate objects
public class User {
    @NotNull @Email 
    public String getEmail() { return email; }
    public void setEmail(String email) { 
      this.email = email; 
    }
    private String email;
}

Learn more...

Bean Validation 1.1

Bean Validation 1.1 is a specification proposal which aims at improving upon the initial version. Its JCP matricule is JSR-349. Like all Red Hat lead JSRs, Bean Validation is made in the open in an open source fashion. You are encouraged to come contribute to make a difference.

You can check out the Bean Validation 1.1 goals.

Provide feedback or participate...

Latest news

Proposal for method validation added

01 February 2012

The first draft of the proposal for method-level validation is online. The proposal covers the declaration of parameter as well as return values constraints, extensions to the Validator API, related additions to the meta-data API etc. So check out the proposal document and let us know what you think, e.g. by sending...

Adding proposal section and first proposal

21 October 2011

We have introduced a new section of the website called proposals. This will include wiki-style, work in progress proposals for various features being worked on. Check out the first proposal page describing ideas and open questions on how to propose dependency injection in ConstraintValidator instances. ...

Work on method level validation

16 September 2011

The expert groups has begun its work on method-level validation. A feature that was drafted in the latest spec (appendix) but that we could nto finish in time. You will be able to define constraints on parameters and your favorite interception technology (CDI, @Inject, AspectJ, Spring etc) will call Bean Validation. The final approach...

The specification repository is released

01 September 2011

The last piece of the puzzle is now in the open. I have just released the specification repository on GitHub. The list of repositories for the spec are Specification repository Reference implementation repository API repository TCK repository This website source Want to contribute? Learn how. ...