Spring Web Flow

org.springframework.webflow.action
Class FormObjectAccessor

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

public class FormObjectAccessor
extends java.lang.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:
RequestContext, Errors

Constructor Summary
FormObjectAccessor(RequestContext context)
          Creates a form object accessor that wraps the given context.
 
Method Summary
 org.springframework.validation.Errors getCurrentFormErrors()
          Gets the form object Errors tracker from the context, using the form object name.
 org.springframework.validation.Errors getCurrentFormErrors(ScopeType scopeType)
          Gets the form object Errors tracker from the context, using the form object name.
static java.lang.String getCurrentFormErrorsName()
          Returns the current form object errors attribute name.
 java.lang.Object getCurrentFormObject()
          Gets the form object from the context, using the well-known attribute name.
 java.lang.Object getCurrentFormObject(ScopeType scopeType)
          Gets the form object from the context, using the well-known attribute name.
static java.lang.String getCurrentFormObjectName()
          Returns the current form object name.
 org.springframework.validation.Errors getFormErrors(java.lang.String formObjectName, ScopeType scopeType)
          Gets the form object Errors tracker from the context, using the specified form object name.
 java.lang.Object getFormObject(java.lang.String formObjectName, java.lang.Class<?> formObjectClass, ScopeType scopeType)
          Gets the form object from the context, using the specified name.
 java.lang.Object getFormObject(java.lang.String formObjectName, ScopeType scopeType)
          Gets the form object from the context, using the specified name.
 void putFormErrors(org.springframework.validation.Errors errors, ScopeType scopeType)
          Expose given errors instance in the specified scope.
 void putFormObject(java.lang.Object formObject, java.lang.String formObjectName, ScopeType scopeType)
          Expose given form object using given name in specified scope.
 void setCurrentFormErrors(org.springframework.validation.Errors errors, ScopeType scopeType)
          Expose given errors instance using the well known alias in the specified scope.
 void setCurrentFormObject(java.lang.Object formObject, ScopeType scopeType)
          Expose given form object using the well known alias in the specified scope.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FormObjectAccessor

public FormObjectAccessor(RequestContext context)
Creates a form object accessor that wraps the given context.

Parameters:
context - the flow execution request context
Method Detail

getCurrentFormObjectName

public static java.lang.String getCurrentFormObjectName()
Returns the current form object name.

Returns:
the current form object name

getCurrentFormErrorsName

public static java.lang.String getCurrentFormErrorsName()
Returns the current form object errors attribute name.

Returns:
the current form object errors attribute name

getCurrentFormObject

public java.lang.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 java.lang.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(java.lang.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 java.lang.Object getFormObject(java.lang.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 java.lang.Object getFormObject(java.lang.String formObjectName,
                                      java.lang.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(java.lang.Object formObject,
                          java.lang.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(java.lang.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

Spring Web Flow