Class AbstractErrors
- All Implemented Interfaces:
Serializable
,Errors
- Direct Known Subclasses:
AbstractBindingResult
Errors
interface.
Provides nested path handling but does not define concrete management
of ObjectErrors
and FieldErrors
.- Since:
- 2.5.3
- Author:
- Juergen Hoeller, Rossen Stoyanchev
- See Also:
-
Field Summary
Fields inherited from interface org.springframework.validation.Errors
NESTED_PATH_SEPARATOR
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected String
canonicalFieldName
(String field) Determine the canonical field name for the given field.protected void
doSetNestedPath
(String nestedPath) Actually set the nested path.protected String
fixedField
(String field) Transform the given field into its full path, regarding the nested path of this instance.getFieldErrors
(String field) Get all errors associated with the given field.Return the current nested path of thisErrors
object.protected boolean
isMatchingFieldError
(String field, FieldError fieldError) Check whether the given FieldError matches the given field.void
Pop the former nested path from the nested path stack.void
pushNestedPath
(String subPath) Push the given sub path onto the nested path stack.void
setNestedPath
(String nestedPath) Allow context to be changed so that standard validators can validate subtrees.toString()
Return a summary of the recorded errors, for example, for inclusion in an exception message.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.springframework.validation.Errors
addAllErrors, failOnError, getAllErrors, getErrorCount, getFieldError, getFieldError, getFieldErrorCount, getFieldErrorCount, getFieldErrors, getFieldType, getFieldValue, getGlobalError, getGlobalErrorCount, getGlobalErrors, getObjectName, hasErrors, hasFieldErrors, hasFieldErrors, hasGlobalErrors, reject, reject, reject, rejectValue, rejectValue, rejectValue
-
Constructor Details
-
AbstractErrors
public AbstractErrors()
-
-
Method Details
-
setNestedPath
Description copied from interface:Errors
Allow context to be changed so that standard validators can validate subtrees. Reject calls prepend the given path to the field names.For example, an address validator could validate the subobject "address" of a customer object.
The default implementation throws
UnsupportedOperationException
since not allErrors
implementations support nested paths.- Specified by:
setNestedPath
in interfaceErrors
- Parameters:
nestedPath
- nested path within this object, for example, "address" (defaults to "",null
is also acceptable). Can end with a dot: both "address" and "address." are valid.- See Also:
-
getNestedPath
Description copied from interface:Errors
Return the current nested path of thisErrors
object.Returns a nested path with a dot, i.e. "address.", for easy building of concatenated paths. Default is an empty String.
- Specified by:
getNestedPath
in interfaceErrors
- See Also:
-
pushNestedPath
Description copied from interface:Errors
Push the given sub path onto the nested path stack.A
Errors.popNestedPath()
call will reset the original nested path before the correspondingpushNestedPath(String)
call.Using the nested path stack allows to set temporary nested paths for subobjects without having to worry about a temporary path holder.
For example: current path "spouse.", pushNestedPath("child") → result path "spouse.child."; popNestedPath() → "spouse." again.
The default implementation throws
UnsupportedOperationException
since not allErrors
implementations support nested paths.- Specified by:
pushNestedPath
in interfaceErrors
- Parameters:
subPath
- the sub path to push onto the nested path stack- See Also:
-
popNestedPath
Description copied from interface:Errors
Pop the former nested path from the nested path stack.- Specified by:
popNestedPath
in interfaceErrors
- Throws:
IllegalStateException
- if there is no former nested path on the stack- See Also:
-
doSetNestedPath
Actually set the nested path. Delegated to by setNestedPath and pushNestedPath. -
fixedField
Transform the given field into its full path, regarding the nested path of this instance. -
canonicalFieldName
Determine the canonical field name for the given field.The default implementation simply returns the field name as-is.
- Parameters:
field
- the original field name- Returns:
- the canonical field name
-
getFieldErrors
Description copied from interface:Errors
Get all errors associated with the given field.Implementations may support not only full field names like "address.street" but also pattern matches like "address.*".
- Specified by:
getFieldErrors
in interfaceErrors
- Parameters:
field
- the field name- Returns:
- a List of
FieldError
instances - See Also:
-
isMatchingFieldError
Check whether the given FieldError matches the given field.- Parameters:
field
- the field that we are looking up FieldErrors forfieldError
- the candidate FieldError- Returns:
- whether the FieldError matches the given field
-
toString
Description copied from interface:Errors
Return a summary of the recorded errors, for example, for inclusion in an exception message.
-