org.springframework.faces.webflow
Class FlowViewStateManager
java.lang.Object
javax.faces.application.StateManager
org.springframework.faces.webflow.FlowViewStateManager
public class FlowViewStateManager
- extends javax.faces.application.StateManager
Custom StateManager
that manages the JSF component state in web flow's view scope.
- Author:
- Jeremy Grelle, Rossen Stoyanchev
Nested classes/interfaces inherited from class javax.faces.application.StateManager |
javax.faces.application.StateManager.SerializedView |
Fields inherited from class javax.faces.application.StateManager |
FULL_STATE_SAVING_VIEW_IDS_PARAM_NAME, IS_BUILDING_INITIAL_STATE, IS_SAVING_STATE, PARTIAL_STATE_SAVING_PARAM_NAME, SERIALIZE_SERVER_STATE_PARAM_NAME, STATE_SAVING_METHOD_CLIENT, STATE_SAVING_METHOD_PARAM_NAME, STATE_SAVING_METHOD_SERVER |
Method Summary |
protected java.lang.Object |
getComponentStateToSave(javax.faces.context.FacesContext context)
|
protected java.lang.Object |
getTreeStructureToSave(javax.faces.context.FacesContext context)
|
java.lang.String |
getViewState(javax.faces.context.FacesContext context)
|
boolean |
isSavingStateInClient(javax.faces.context.FacesContext context)
|
protected void |
restoreComponentState(javax.faces.context.FacesContext context,
javax.faces.component.UIViewRoot viewRoot,
java.lang.String renderKitId)
|
protected javax.faces.component.UIViewRoot |
restoreTreeStructure(javax.faces.context.FacesContext context,
java.lang.String viewId,
java.lang.String renderKitId)
|
javax.faces.component.UIViewRoot |
restoreView(javax.faces.context.FacesContext context,
java.lang.String viewId,
java.lang.String renderKitId)
In JSF 2 where a partial state saving algorithm is used, this method merely delegates to the next
ViewStateManager. |
javax.faces.application.StateManager.SerializedView |
saveSerializedView(javax.faces.context.FacesContext context)
JSF 1.1 version of state saving |
java.lang.Object |
saveView(javax.faces.context.FacesContext context)
JSF 1.2 (or higher) version of state saving. |
void |
writeState(javax.faces.context.FacesContext context,
java.lang.Object state)
|
void |
writeState(javax.faces.context.FacesContext context,
javax.faces.application.StateManager.SerializedView state)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SERIALIZED_VIEW_STATE
protected static final java.lang.String SERIALIZED_VIEW_STATE
- See Also:
- Constant Field Values
FlowViewStateManager
public FlowViewStateManager(javax.faces.application.StateManager delegate)
getComponentStateToSave
protected java.lang.Object getComponentStateToSave(javax.faces.context.FacesContext context)
- Overrides:
getComponentStateToSave
in class javax.faces.application.StateManager
getTreeStructureToSave
protected java.lang.Object getTreeStructureToSave(javax.faces.context.FacesContext context)
- Overrides:
getTreeStructureToSave
in class javax.faces.application.StateManager
restoreComponentState
protected void restoreComponentState(javax.faces.context.FacesContext context,
javax.faces.component.UIViewRoot viewRoot,
java.lang.String renderKitId)
- Overrides:
restoreComponentState
in class javax.faces.application.StateManager
restoreTreeStructure
protected javax.faces.component.UIViewRoot restoreTreeStructure(javax.faces.context.FacesContext context,
java.lang.String viewId,
java.lang.String renderKitId)
- Overrides:
restoreTreeStructure
in class javax.faces.application.StateManager
writeState
public void writeState(javax.faces.context.FacesContext context,
javax.faces.application.StateManager.SerializedView state)
throws java.io.IOException
- Overrides:
writeState
in class javax.faces.application.StateManager
- Throws:
java.io.IOException
writeState
public void writeState(javax.faces.context.FacesContext context,
java.lang.Object state)
throws java.io.IOException
- Overrides:
writeState
in class javax.faces.application.StateManager
- Throws:
java.io.IOException
isSavingStateInClient
public boolean isSavingStateInClient(javax.faces.context.FacesContext context)
- Overrides:
isSavingStateInClient
in class javax.faces.application.StateManager
saveSerializedView
public javax.faces.application.StateManager.SerializedView saveSerializedView(javax.faces.context.FacesContext context)
- JSF 1.1 version of state saving
- Overrides:
saveSerializedView
in class javax.faces.application.StateManager
saveView
public java.lang.Object saveView(javax.faces.context.FacesContext context)
JSF 1.2 (or higher) version of state saving.
In JSF 2, if partial state saving is enabled this method delegates in order to obtain the serialized view state.
During rendering JSF calls this method to prepare the state and then calls FlowViewResponseStateManager
which writes it to Web Flow's view scope.
Nevertheless this method always writes the serialized state to Web Flow's view scope to ensure it is up-to-date
for cases outside of rendering (e.g. ViewState.updateHistory()) or when the render phase doesn't call
FlowViewResponseStateManager
such as when processing a partial request.
- Overrides:
saveView
in class javax.faces.application.StateManager
restoreView
public javax.faces.component.UIViewRoot restoreView(javax.faces.context.FacesContext context,
java.lang.String viewId,
java.lang.String renderKitId)
In JSF 2 where a partial state saving algorithm is used, this method merely delegates to the next
ViewStateManager. Thus partial state saving is handled by the JSF 2 runtime. However, a
FlowViewResponseStateManager
plugged in via FlowRenderKit
will ensure the state is saved in a Web
Flow view-scoped variable.
- Specified by:
restoreView
in class javax.faces.application.StateManager
getViewState
public java.lang.String getViewState(javax.faces.context.FacesContext context)
- Overrides:
getViewState
in class javax.faces.application.StateManager