Package jakarta.validation
Interface Validator
-
public interface Validator
Validates bean instances. Implementations of this interface must be thread-safe.- Author:
- Emmanuel Bernard, Hardy Ferentschik, Gunnar Morling
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ExecutableValidator
forExecutables()
Returns the contract for validating parameters and return values of methods and constructors.BeanDescriptor
getConstraintsForClass(Class<?> clazz)
Returns the descriptor object describing bean constraints.<T> T
unwrap(Class<T> type)
Returns an instance of the specified type allowing access to provider-specific APIs.<T> Set<ConstraintViolation<T>>
validate(T object, Class<?>... groups)
Validates all constraints onobject
.<T> Set<ConstraintViolation<T>>
validateProperty(T object, String propertyName, Class<?>... groups)
Validates all constraints placed on the property ofobject
namedpropertyName
.<T> Set<ConstraintViolation<T>>
validateValue(Class<T> beanType, String propertyName, Object value, Class<?>... groups)
Validates all constraints placed on the property namedpropertyName
of the classbeanType
would the property value bevalue
.
-
-
-
Method Detail
-
validate
<T> Set<ConstraintViolation<T>> validate(T object, Class<?>... groups)
Validates all constraints onobject
.- Type Parameters:
T
- the type of the object to validate- Parameters:
object
- object to validategroups
- the group or list of groups targeted for validation (defaults toDefault
)- Returns:
- constraint violations or an empty set if none
- Throws:
IllegalArgumentException
- if object isnull
or ifnull
is passed to the varargs groupsValidationException
- if a non recoverable error happens during the validation process
-
validateProperty
<T> Set<ConstraintViolation<T>> validateProperty(T object, String propertyName, Class<?>... groups)
Validates all constraints placed on the property ofobject
namedpropertyName
.- Type Parameters:
T
- the type of the object to validate- Parameters:
object
- object to validatepropertyName
- property to validate (i.e. field and getter constraints)groups
- the group or list of groups targeted for validation (defaults toDefault
)- Returns:
- constraint violations or an empty set if none
- Throws:
IllegalArgumentException
- ifobject
isnull
, ifpropertyName
isnull
, empty or not a valid object property or ifnull
is passed to the varargs groupsValidationException
- if a non recoverable error happens during the validation process
-
validateValue
<T> Set<ConstraintViolation<T>> validateValue(Class<T> beanType, String propertyName, Object value, Class<?>... groups)
Validates all constraints placed on the property namedpropertyName
of the classbeanType
would the property value bevalue
.ConstraintViolation
objects returnnull
forConstraintViolation.getRootBean()
andConstraintViolation.getLeafBean()
.- Type Parameters:
T
- the type of the object to validate- Parameters:
beanType
- the bean typepropertyName
- property to validatevalue
- property value to validategroups
- the group or list of groups targeted for validation (defaults toDefault
).- Returns:
- constraint violations or an empty set if none
- Throws:
IllegalArgumentException
- ifbeanType
isnull
, ifpropertyName
isnull
, empty or not a valid object property or ifnull
is passed to the varargs groupsValidationException
- if a non recoverable error happens during the validation process
-
getConstraintsForClass
BeanDescriptor getConstraintsForClass(Class<?> clazz)
Returns the descriptor object describing bean constraints.The returned object (and associated objects including
ConstraintDescriptor
s) are immutable.- Parameters:
clazz
- class or interface type evaluated- Returns:
- the bean descriptor for the specified class
- Throws:
IllegalArgumentException
- if clazz isnull
ValidationException
- if a non recoverable error happens during the metadata discovery or if some constraints are invalid.
-
unwrap
<T> T unwrap(Class<T> type)
Returns an instance of the specified type allowing access to provider-specific APIs.If the Jakarta Bean Validation provider implementation does not support the specified class,
ValidationException
is thrown.- Type Parameters:
T
- the type of the object to be returned- Parameters:
type
- the class of the object to be returned- Returns:
- an instance of the specified class
- Throws:
ValidationException
- if the provider does not support the call
-
forExecutables
ExecutableValidator forExecutables()
Returns the contract for validating parameters and return values of methods and constructors.- Returns:
- contract for method and constructor validation
- Since:
- 1.1
-
-