Hibernate.orgCommunity Documentation

Hibernate Validator 5.2.5.Final

JSR 349 Reference Implementation

Reference Guide

2017-03-15


Preface
1. Getting started
1.1. Project set up
1.1.1. Unified EL
1.1.2. CDI
1.1.3. Running with a security manager
1.2. Applying constraints
1.3. Validating constraints
1.4. Java 8 support
1.4.1. Type arguments constraints
1.4.2. Actual parameter names
1.4.3. New date/time API
1.4.4. Optional type
1.5. Where to go next?
2. Declaring and validating bean constraints
2.1. Declaring bean constraints
2.1.1. Field-level constraints
2.1.2. Property-level constraints
2.1.3. Type argument constraints
2.1.4. Class-level constraints
2.1.5. Constraint inheritance
2.1.6. Object graphs
2.2. Validating bean constraints
2.2.1. Obtaining a Validator instance
2.2.2. Validator methods
2.2.3. ConstraintViolation methods
2.3. Built-in constraints
2.3.1. Bean Validation constraints
2.3.2. Additional constraints
3. Declaring and validating method constraints
3.1. Declaring method constraints
3.1.1. Parameter constraints
3.1.2. Return value constraints
3.1.3. Cascaded validation
3.1.4. Method constraints in inheritance hierarchies
3.2. Validating method constraints
3.2.1. Obtaining an ExecutableValidator instance
3.2.2. ExecutableValidator methods
3.2.3. ConstraintViolation methods for method validation
3.3. Built-in method constraints
4. Interpolating constraint error messages
4.1. Default message interpolation
4.1.1. Special characters
4.1.2. Interpolation with message expressions
4.1.3. Examples
4.2. Custom message interpolation
4.2.1. ResourceBundleLocator
5. Grouping constraints
5.1. Requesting groups
5.2. Defining group sequences
5.3. Redefining the default group sequence
5.3.1. @GroupSequence
5.3.2. @GroupSequenceProvider
5.4. Group conversion
6. Creating custom constraints
6.1. Creating a simple constraint
6.1.1. The constraint annotation
6.1.2. The constraint validator
6.1.3. The error message
6.1.4. Using the constraint
6.2. Class-level constraints
6.2.1. Custom property paths
6.3. Cross-parameter constraints
6.4. Constraint composition
7. Configuring via XML
7.1. Configuring the validator factory in validation.xml
7.2. Mapping constraints via constraint-mappings
8. Bootstrapping
8.1. Retrieving ValidatorFactory and Validator
8.1.1. ValidationProviderResolver
8.2. Configuring a ValidatorFactory
8.2.1. MessageInterpolator
8.2.2. TraversableResolver
8.2.3. ConstraintValidatorFactory
8.2.4. ParameterNameProvider
8.2.5. Adding mapping streams
8.2.6. Provider-specific settings
8.3. Configuring a Validator
9. Using constraint metadata
9.1. BeanDescriptor
9.2. PropertyDescriptor
9.3. MethodDescriptor and ConstructorDescriptor
9.4. ElementDescriptor
9.5. GroupConversionDescriptor
9.6. ConstraintDescriptor
10. Integrating with other frameworks
10.1. ORM integration
10.1.1. Database schema-level validation
10.1.2. Hibernate event-based validation
10.1.3. JPA
10.2. JSF & Seam
10.3. CDI
10.3.1. Dependency injection
10.3.2. Method validation
10.4. Java EE
10.5. JavaFX
11. Hibernate Validator Specifics
11.1. Public API
11.2. Fail fast mode
11.3. Programmatic constraint declaration
11.4. Applying programmatic constraint declarations to the default validator factory
11.5. Advanced constraint composition features
11.5.1. Validation target specification for purely composed constraints
11.5.2. Boolean composition of constraints
11.6. Extensions of the Path API
11.7. ParameterMessageInterpolator
11.8. ResourceBundleLocator
11.9. Custom contexts
11.9.1. HibernateConstraintValidatorContext
11.9.2. HibernateMessageInterpolatorContext
11.10. ParaNamer based ParameterNameProvider
11.11. Unwrapping values
11.11.1. Optional unwrapper
11.11.2. JavaFX unwrapper
11.11.3. Unwrapping object graphs
11.12. Providing constraint definitions
11.12.1. Constraint definitions via ServiceLoader
11.12.2. Constraint definitions via ConstraintDefinitionContributor
11.13. Customizing class-loading
11.14. Time providers for @Future and @Past
12. Annotation Processor
12.1. Prerequisites
12.2. Features
12.3. Options
12.4. Using the Annotation Processor
12.4.1. Command line builds
12.4.2. IDE builds
12.5. Known issues
13. Further reading