|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface Errors
Stores and exposes information about data-binding and validation errors for a specific object.
Field names can be properties of the target object (e.g. "name"
when binding to a customer object), or nested fields in case of
subobjects (e.g. "address.street"). Supports subtree navigation
via setNestedPath(String): for example, an
AddressValidator validates "address", not being aware
that this is a subobject of customer.
Note: Errors objects are single-threaded.
setNestedPath(java.lang.String),
BindException,
DataBinder,
ValidationUtils| Field Summary | |
|---|---|
static String |
NESTED_PATH_SEPARATOR
The separator between path elements in a nested path, for example in "customer.name" or "customer.address.street". |
| Method Summary | |
|---|---|
void |
addAllErrors(Errors errors)
Add all errors from the given Errors instance to this
Errors instance. |
List |
getAllErrors()
Get all errors, both global and field ones. |
int |
getErrorCount()
Return the total number of errors. |
FieldError |
getFieldError()
Get the first error associated with a field, if any. |
FieldError |
getFieldError(String field)
Get the first error associated with the given field, if any. |
int |
getFieldErrorCount()
Return the number of errors associated with a field. |
int |
getFieldErrorCount(String field)
Return the number of errors associated with the given field. |
List |
getFieldErrors()
Get all errors associated with a field. |
List |
getFieldErrors(String field)
Get all errors associated with the given field. |
Class |
getFieldType(String field)
Return the type of a given field. |
Object |
getFieldValue(String field)
Return the current value of the given field, either the current bean property value or a rejected update from the last binding. |
ObjectError |
getGlobalError()
Get the first global error, if any. |
int |
getGlobalErrorCount()
Return the number of global errors. |
List |
getGlobalErrors()
Get all global errors. |
String |
getNestedPath()
Return the current nested path of this Errors object. |
String |
getObjectName()
Return the name of the bound root object. |
boolean |
hasErrors()
Return if there were any errors. |
boolean |
hasFieldErrors()
Are there any field errors? |
boolean |
hasFieldErrors(String field)
Are there any errors associated with the given field? |
boolean |
hasGlobalErrors()
Are there any global errors? |
void |
popNestedPath()
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 |
reject(String errorCode)
Register a global error for the entire target object, using the given error description. |
void |
reject(String errorCode,
Object[] errorArgs,
String defaultMessage)
Register a global error for the entire target object, using the given error description. |
void |
reject(String errorCode,
String defaultMessage)
Register a global error for the entire target object, using the given error description. |
void |
rejectValue(String field,
String errorCode)
Register a field error for the specified field of the current object (respecting the current nested path, if any), using the given error description. |
void |
rejectValue(String field,
String errorCode,
Object[] errorArgs,
String defaultMessage)
Register a field error for the specified field of the current object (respecting the current nested path, if any), using the given error description. |
void |
rejectValue(String field,
String errorCode,
String defaultMessage)
Register a field error for the specified field of the current object (respecting the current nested path, if any), using the given error description. |
void |
setNestedPath(String nestedPath)
Allow context to be changed so that standard validators can validate subtrees. |
| Field Detail |
|---|
static final String NESTED_PATH_SEPARATOR
"." = same as the
nested property separator
in the beans package.
| Method Detail |
|---|
String getObjectName()
void setNestedPath(String nestedPath)
For example, an address validator could validate the subobject "address" of a customer object.
nestedPath - nested path within this object,
e.g. "address" (defaults to "", null is also acceptable).
Can end with a dot: both "address" and "address." are valid.String getNestedPath()
Errors object.
Returns a nested path with a dot, i.e. "address.", for easy building of concatenated paths. Default is an empty String.
void pushNestedPath(String subPath)
A popNestedPath() call will reset the original
nested path before the corresponding
pushNestedPath(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.
subPath - the sub path to push onto the nested path stackpopNestedPath()
void popNestedPath()
throws IllegalStateException
IllegalStateException - if there is no former nested path on the stackpushNestedPath(java.lang.String)void reject(String errorCode)
errorCode - error code, interpretable as a message key
void reject(String errorCode,
String defaultMessage)
errorCode - error code, interpretable as a message keydefaultMessage - fallback default message
void reject(String errorCode,
Object[] errorArgs,
String defaultMessage)
errorCode - error code, interpretable as a message keyerrorArgs - error arguments, for argument binding via MessageFormat
(can be null)defaultMessage - fallback default message
void rejectValue(String field,
String errorCode)
The field name may be null or empty String to indicate
the current object itself rather than a field of it. This may result
in a corresponding field error within the nested object graph or a
global error if the current object is the top object.
field - the field name (may be null or empty String)errorCode - error code, interpretable as a message keygetNestedPath()
void rejectValue(String field,
String errorCode,
String defaultMessage)
The field name may be null or empty String to indicate
the current object itself rather than a field of it. This may result
in a corresponding field error within the nested object graph or a
global error if the current object is the top object.
field - the field name (may be null or empty String)errorCode - error code, interpretable as a message keydefaultMessage - fallback default messagegetNestedPath()
void rejectValue(String field,
String errorCode,
Object[] errorArgs,
String defaultMessage)
The field name may be null or empty String to indicate
the current object itself rather than a field of it. This may result
in a corresponding field error within the nested object graph or a
global error if the current object is the top object.
field - the field name (may be null or empty String)errorCode - error code, interpretable as a message keyerrorArgs - error arguments, for argument binding via MessageFormat
(can be null)defaultMessage - fallback default messagegetNestedPath()void addAllErrors(Errors errors)
Errors instance to this
Errors instance.
This is a onvenience method to avoid repeated reject(..)
calls for merging an Errors instance into another
Errors instance.
Note that the passed-in Errors instance is supposed
to refer to the same target object, or at least contain compatible errors
that apply to the target object of this Errors instance.
errors - the Errors instance to merge inboolean hasErrors()
int getErrorCount()
List getAllErrors()
ObjectError instancesboolean hasGlobalErrors()
true if there are any global errorshasFieldErrors()int getGlobalErrorCount()
getFieldErrorCount()List getGlobalErrors()
ObjectError getGlobalError()
nullboolean hasFieldErrors()
true if there are any errors associated with a fieldhasGlobalErrors()int getFieldErrorCount()
getGlobalErrorCount()List getFieldErrors()
FieldError instancesFieldError getFieldError()
nullboolean hasFieldErrors(String field)
field - the field name
true if there were any errors associated with the given fieldint getFieldErrorCount(String field)
field - the field name
List getFieldErrors(String field)
Implementations should support not only full field names like "name" but also pattern matches like "na*" or "address.*".
field - the field name
FieldError instancesFieldError getFieldError(String field)
field - the field name
nullObject getFieldValue(String field)
Allows for convenient access to user-specified field values, even if there were type mismatches.
field - the field name
Class getFieldType(String field)
Implementations should be able to determine the type even
when the field value is null, for example from some
associated descriptor.
field - the field name
null if not determinable
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||