public interface BindingErrorProcessor
DataBinder
's missing field errors,
and for translating a PropertyAccessException
to a
FieldError
.
The error processor is pluggable so you can treat errors differently if you want to. A default implementation is provided for typical needs.
Note: As of Spring 2.0, this interface operates on a given BindingResult, to be compatible with any binding strategy (bean property, direct field access, etc). It can still receive a BindException as argument (since a BindException implements the BindingResult interface as well) but no longer operates on it directly.
DataBinder.setBindingErrorProcessor(org.springframework.validation.BindingErrorProcessor)
,
DefaultBindingErrorProcessor
,
BindingResult
,
BindException
Modifier and Type | Method and Description |
---|---|
void |
processMissingFieldError(String missingField,
BindingResult bindingResult)
Apply the missing field error to the given BindException.
|
void |
processPropertyAccessException(PropertyAccessException ex,
BindingResult bindingResult)
Translate the given
PropertyAccessException to an appropriate
error registered on the given Errors instance. |
void processMissingFieldError(String missingField, BindingResult bindingResult)
Usually, a field error is created for a missing required field.
missingField
- the field that was missing during bindingbindingResult
- the errors object to add the error(s) to.
You can add more than just one error or maybe even ignore it.
The BindingResult
object features convenience utils such as
a resolveMessageCodes
method to resolve an error code.AbstractBindingResult.addError(org.springframework.validation.ObjectError)
,
AbstractBindingResult.resolveMessageCodes(java.lang.String)
void processPropertyAccessException(PropertyAccessException ex, BindingResult bindingResult)
PropertyAccessException
to an appropriate
error registered on the given Errors
instance.
Note that two error types are available: FieldError
and
ObjectError
. Usually, field errors are created, but in certain
situations one might want to create a global ObjectError
instead.
ex
- the PropertyAccessException
to translatebindingResult
- the errors object to add the error(s) to.
You can add more than just one error or maybe even ignore it.
The BindingResult
object features convenience utils such as
a resolveMessageCodes
method to resolve an error code.Errors
,
FieldError
,
ObjectError
,
MessageCodesResolver
,
AbstractBindingResult.addError(org.springframework.validation.ObjectError)
,
AbstractBindingResult.resolveMessageCodes(java.lang.String)