public interface

BindingResult

implements Errors
org.springframework.validation.BindingResult
Known Indirect Subclasses

Class Overview

General interface that represents binding results. Extends the interface for error registration capabilities, allowing for a Validator to be applied, and adds binding-specific analysis and model building.

Serves as result holder for a DataBinder, obtained via the getBindingResult() method. BindingResult implementations can also be used directly, for example to invoke a Validator on it (e.g. as part of a unit test).

Summary

[Expand]
Inherited Constants
From interface org.springframework.validation.Errors
Fields
public static final String MODEL_KEY_PREFIX Prefix for the name of the BindingResult instance in a model, followed by the object name.
Public Methods
abstract void addError(ObjectError error)
Add a custom ObjectError or FieldError to the errors list.
abstract PropertyEditor findEditor(String field, Class valueType)
Find a custom property editor for the given type and property.
abstract Map<StringObject> getModel()
Return a model Map for the obtained state, exposing a BindingResult instance as 'MODEL_KEY_PREFIX + objectName' and the object itself as 'objectName'.
abstract PropertyEditorRegistry getPropertyEditorRegistry()
Return the underlying PropertyEditorRegistry.
abstract Object getRawFieldValue(String field)
Extract the raw field value for the given field.
abstract String[] getSuppressedFields()
Return the list of fields that were suppressed during the bind process.
abstract Object getTarget()
Return the wrapped target object, which may be a bean, an object with public fields, a Map - depending on the concrete binding strategy.
abstract void recordSuppressedField(String field)
Mark the specified disallowed field as suppressed.
abstract String[] resolveMessageCodes(String errorCode, String field)
Resolve the given error code into message codes for the given field.
[Expand]
Inherited Methods
From interface org.springframework.validation.Errors

Fields

public static final String MODEL_KEY_PREFIX

Prefix for the name of the BindingResult instance in a model, followed by the object name.

Public Methods

public abstract void addError (ObjectError error)

Add a custom ObjectError or FieldError to the errors list.

Intended to be used by cooperating strategies such as BindingErrorProcessor.

public abstract PropertyEditor findEditor (String field, Class valueType)

Find a custom property editor for the given type and property.

Parameters
field the path of the property (name or nested path), or null if looking for an editor for all properties of the given type
valueType the type of the property (can be null if a property is given but should be specified in any case for consistency checking)
Returns
  • the registered editor, or null if none

public abstract Map<StringObject> getModel ()

Return a model Map for the obtained state, exposing a BindingResult instance as 'MODEL_KEY_PREFIX + objectName' and the object itself as 'objectName'.

Note that the Map is constructed every time you're calling this method. Adding things to the map and then re-calling this method will not work.

The attributes in the model Map returned by this method are usually included in the ModelAndView for a form view that uses Spring's bind tag in a JSP, which needs access to the BindingResult instance. Spring's pre-built form controllers will do this for you when rendering a form view. When building the ModelAndView instance yourself, you need to include the attributes from the model Map returned by this method.

public abstract PropertyEditorRegistry getPropertyEditorRegistry ()

Return the underlying PropertyEditorRegistry.

Returns
  • the PropertyEditorRegistry, or null if none available for this BindingResult

public abstract Object getRawFieldValue (String field)

Extract the raw field value for the given field. Typically used for comparison purposes.

Parameters
field the field to check
Returns
  • the current value of the field in its raw form, or null if not known

public abstract String[] getSuppressedFields ()

Return the list of fields that were suppressed during the bind process.

Can be used to determine whether any field values were targeting disallowed fields.

public abstract Object getTarget ()

Return the wrapped target object, which may be a bean, an object with public fields, a Map - depending on the concrete binding strategy.

public abstract void recordSuppressedField (String field)

Mark the specified disallowed field as suppressed.

The data binder invokes this for each field value that was detected to target a disallowed field.

public abstract String[] resolveMessageCodes (String errorCode, String field)

Resolve the given error code into message codes for the given field.

Calls the configured MessageCodesResolver with appropriate parameters.

Parameters
errorCode the error code to resolve into message codes
field the field to resolve message codes for
Returns
  • the resolved message codes