Class ParameterValidationResult
java.lang.Object
org.springframework.validation.method.ParameterValidationResult
- Direct Known Subclasses:
ParameterErrors
Store and expose the results of method validation for a method parameter.
- Validation errors directly on method parameter values are exposed as a
list of
MessageSourceResolvable
s. - Nested validation errors on an Object method parameter are exposed as
Errors
by the subclassParameterErrors
.
When the method parameter is a container such as a List
, array,
or Map
, then a separate ParameterValidationResult
is created for each element with errors. In that case, the properties
container
, containerIndex
,
and containerKey
provide additional context.
- Since:
- 6.1
- Author:
- Rossen Stoyanchev
-
Constructor Summary
ConstructorDescriptionParameterValidationResult
(MethodParameter param, Object arg, Collection<? extends MessageSourceResolvable> errors) Deprecated, for removal: This API element is subject to removal in a future version.ParameterValidationResult
(MethodParameter param, Object arg, Collection<? extends MessageSourceResolvable> errors, Object container, Integer index, Object key) Deprecated, for removal: This API element is subject to removal in a future version.ParameterValidationResult
(MethodParameter param, Object arg, Collection<? extends MessageSourceResolvable> errors, Object container, Integer index, Object key, BiFunction<MessageSourceResolvable, Class<?>, Object> sourceLookup) Create aParameterValidationResult
. -
Method Summary
Modifier and TypeMethodDescriptionboolean
The method argument value that was validated.When@Valid
is declared on a container of elements such asCollection
,Map
,Optional
, and others, this method returns the container of the validatedargument
, whilegetContainerIndex()
andgetContainerKey()
provide information about the index or key if applicable.The method parameter the validation results are for.List ofMessageSourceResolvable
representations adapted from the validation errors of the validation library.int
hashCode()
toString()
<T> T
unwrap
(MessageSourceResolvable error, Class<T> sourceType) Unwrap the source behind the given error.
-
Constructor Details
-
ParameterValidationResult
public ParameterValidationResult(MethodParameter param, @Nullable Object arg, Collection<? extends MessageSourceResolvable> errors, @Nullable Object container, @Nullable Integer index, @Nullable Object key, BiFunction<MessageSourceResolvable, Class<?>, Object> sourceLookup) Create aParameterValidationResult
. -
ParameterValidationResult
@Deprecated(since="6.2", forRemoval=true) public ParameterValidationResult(MethodParameter param, @Nullable Object arg, Collection<? extends MessageSourceResolvable> errors, @Nullable Object container, @Nullable Integer index, @Nullable Object key) Deprecated, for removal: This API element is subject to removal in a future version.Create aParameterValidationResult
. -
ParameterValidationResult
@Deprecated(since="6.1.3", forRemoval=true) public ParameterValidationResult(MethodParameter param, @Nullable Object arg, Collection<? extends MessageSourceResolvable> errors) Deprecated, for removal: This API element is subject to removal in a future version.Create aParameterValidationResult
.
-
-
Method Details
-
getMethodParameter
The method parameter the validation results are for. -
getArgument
The method argument value that was validated. -
getResolvableErrors
List ofMessageSourceResolvable
representations adapted from the validation errors of the validation library.- For a constraints directly on a method parameter, error codes are
based on the names of the constraint annotation, the object, the method,
the parameter, and parameter type, for example,
["Max.myObject#myMethod.myParameter", "Max.myParameter", "Max.int", "Max"]
. Arguments include the parameter itself as aMessageSourceResolvable
, for example,["myObject#myMethod.myParameter", "myParameter"]
, followed by actual constraint annotation attributes (i.e. excluding "message", "groups" and "payload") in alphabetical order of attribute names. - For cascaded constraints via
@Valid
on a bean method parameter, this method returnsfield errors
that you can also access more conveniently through methods of theParameterErrors
sub-class.
- For a constraints directly on a method parameter, error codes are
based on the names of the constraint annotation, the object, the method,
the parameter, and parameter type, for example,
-
getContainer
When@Valid
is declared on a container of elements such asCollection
,Map
,Optional
, and others, this method returns the container of the validatedargument
, whilegetContainerIndex()
andgetContainerKey()
provide information about the index or key if applicable. -
getContainerIndex
-
getContainerKey
-
unwrap
Unwrap the source behind the given error. For Jakarta Bean validation the source is aConstraintViolation
.- Parameters:
sourceType
- the expected source type- Returns:
- the source object of the given type
- Since:
- 6.2
-
equals
-
hashCode
public int hashCode() -
toString
-
ParameterValidationResult(MethodParameter, Object, Collection, Object, Integer, Object, BiFunction)