Class FormObjectAccessor

java.lang.Object
org.springframework.webflow.action.FormObjectAccessor

public class FormObjectAccessor extends Object
Convenience helper that encapsulates logic on how to retrieve and expose form objects and associated errors to and from a flow execution request context.

Note: The form object available under the well known attribute name will be the last ("current") form object set in the request context. The same is true for the associated errors object. This implies that special care should be taken when accessing the form object using this alias if there are multiple form objects available in the flow execution request context!

Author:
Keith Donald, Erwin Vervaet
See Also:
  • Constructor Details

    • FormObjectAccessor

      public FormObjectAccessor(RequestContext context)
      Creates a form object accessor that wraps the given context.
      Parameters:
      context - the flow execution request context
  • Method Details

    • getCurrentFormObjectName

      public static String getCurrentFormObjectName()
      Returns the current form object name.
      Returns:
      the current form object name
    • getCurrentFormErrorsName

      public static String getCurrentFormErrorsName()
      Returns the current form object errors attribute name.
      Returns:
      the current form object errors attribute name
    • getCurrentFormObject

      public Object getCurrentFormObject()
      Gets the form object from the context, using the well-known attribute name. Will try all scopes.
      Returns:
      the form object, or null if not found
    • getCurrentFormObject

      public Object getCurrentFormObject(ScopeType scopeType)
      Gets the form object from the context, using the well-known attribute name.
      Parameters:
      scopeType - the scope to obtain the form object from
      Returns:
      the form object, or null if not found
    • setCurrentFormObject

      public void setCurrentFormObject(Object formObject, ScopeType scopeType)
      Expose given form object using the well known alias in the specified scope.
      Parameters:
      formObject - the form object
      scopeType - the scope in which to expose the form object
    • getFormObject

      public Object getFormObject(String formObjectName, ScopeType scopeType)
      Gets the form object from the context, using the specified name.
      Parameters:
      formObjectName - the name of the form object in the context
      scopeType - the scope to obtain the form object from
      Returns:
      the form object, or null if not found
    • getFormObject

      public Object getFormObject(String formObjectName, Class<?> formObjectClass, ScopeType scopeType)
      Gets the form object from the context, using the specified name.
      Parameters:
      formObjectName - the name of the form in the context
      formObjectClass - the class of the form object, which will be verified
      scopeType - the scope to obtain the form object from
      Returns:
      the form object, or null if not found
    • putFormObject

      public void putFormObject(Object formObject, String formObjectName, ScopeType scopeType)
      Expose given form object using given name in specified scope. Given object will become the current form object.
      Parameters:
      formObject - the form object
      formObjectName - the name of the form object
      scopeType - the scope in which to expose the form object
    • getCurrentFormErrors

      public org.springframework.validation.Errors getCurrentFormErrors()
      Gets the form object Errors tracker from the context, using the form object name. This method will search all scopes.
      Returns:
      the form object Errors tracker, or null if not found
    • getCurrentFormErrors

      public org.springframework.validation.Errors getCurrentFormErrors(ScopeType scopeType)
      Gets the form object Errors tracker from the context, using the form object name.
      Parameters:
      scopeType - the scope to obtain the errors from
      Returns:
      the form object Errors tracker, or null if not found
    • setCurrentFormErrors

      public void setCurrentFormErrors(org.springframework.validation.Errors errors, ScopeType scopeType)
      Expose given errors instance using the well known alias in the specified scope.
      Parameters:
      errors - the errors instance
      scopeType - the scope in which to expose the errors instance
    • getFormErrors

      public org.springframework.validation.Errors getFormErrors(String formObjectName, ScopeType scopeType)
      Gets the form object Errors tracker from the context, using the specified form object name.
      Parameters:
      formObjectName - the name of the Errors object, which will be prefixed with BindingResult.MODEL_KEY_PREFIX
      scopeType - the scope to obtain the errors from
      Returns:
      the form object errors instance, or null if not found
    • putFormErrors

      public void putFormErrors(org.springframework.validation.Errors errors, ScopeType scopeType)
      Expose given errors instance in the specified scope. Given errors instance will become the current form errors instance.
      Parameters:
      errors - the errors object
      scopeType - the scope to expose the errors in