## org.springframework.validation
Interface BindingResult

All Superinterfaces:
  Errors

All Known Implementing Classes:
  AbstractBindingResult, AbstractPropertyBindingResult, BeanPropertyBindingResult, BindException, DirectFieldBindingResult, MapBindingResult

    public interface BindingResult

extends Errors

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 `DataBinder.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).

Since:
  2.0
Author:
  Juergen Hoeller
See Also:
  `DataBinder`, `Errors`, `Validator`, `BeanPropertyBindingResult`, `DirectFieldBindingResult`, `MapBindingResult`

Field Summary
`static String` `MODEL_KEY_PREFIX` Prefix for the name of the BindingResult instance in a model, followed by the object name.

Fields inherited from interface org.springframework.validation.Errors
`NESTED_PATH_SEPARATOR`

Method Summary
`void` `addError(ObjectError error)` Add a custom `ObjectError` or `FieldError` to the errors list.
`PropertyEditor` `findEditor(String field, Class valueType)` Find a custom property editor for the given type and property.
`Map` `getModel()` Return a model Map for the obtained state, exposing a BindingResult instance as '`MODEL_KEY_PREFIX` + objectName' and the object itself as 'objectName'.
`PropertyEditorRegistry` `getPropertyEditorRegistry()` Return the underlying PropertyEditorRegistry.
`Object` `getRawFieldValue(String field)` Extract the raw field value for the given field.
`String[]` `getSuppressedFields()` Return the list of fields that were suppressed during the bind process.
`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.
`void` `recordSuppressedField(String field)` Mark the specified disallowed field as suppressed.
`String[]` `resolveMessageCodes(String errorCode, String field)` Resolve the given error code into message codes for the given field.

Methods inherited from interface org.springframework.validation.Errors

`addAllErrors, getAllErrors, getErrorCount, getFieldError, getFieldError, getFieldErrorCount, getFieldErrorCount, getFieldErrors, getFieldErrors, getFieldType, getFieldValue, getGlobalError, getGlobalErrorCount, getGlobalErrors, getNestedPath, getObjectName, hasErrors, hasFieldErrors, hasFieldErrors, hasGlobalErrors, popNestedPath, pushNestedPath, reject, reject, reject, rejectValue, rejectValue, rejectValue, setNestedPath`

Field Detail

### MODEL_KEY_PREFIX

    static final String MODEL_KEY_PREFIX

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

Method Detail

### getTarget

    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.

### getModel

    Map 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.

  See Also:
    `Errors.getObjectName()`, `MODEL_KEY_PREFIX`, `ModelAndView`, `BindTag`, `SimpleFormController`

### getRawFieldValue

    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

### findEditor

    PropertyEditor findEditor(String field,
                              Class valueType)

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

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

### getPropertyEditorRegistry

    PropertyEditorRegistry getPropertyEditorRegistry()

  Return the underlying PropertyEditorRegistry.

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

### addError

    void addError(ObjectError error)

  Add a custom `ObjectError` or `FieldError` to the errors list.

  Intended to be used by cooperating strategies such as `BindingErrorProcessor`.

  See Also:
    `ObjectError`, `FieldError`, `BindingErrorProcessor`

### resolveMessageCodes

    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

### recordSuppressedField

    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.

  See Also:
    `DataBinder.setAllowedFields(java.lang.String[])`

### getSuppressedFields

    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.

  See Also:
    `DataBinder.setAllowedFields(java.lang.String[])`

Copyright © 2002-2008 The Spring Framework.