StateHelper provides the functionality associated with server-side state saving, though in
actuality, it is a hybrid between client and server.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanFlag determining how server state IDs are generated.static final StringThe top level attribute name for storing the state structures within the session.protected final IntegerThe number of logical views as configured by the user.protected final IntegerThe number of views as configured by the user.protected final SecureRandomUsed to generate unique server state IDs.static final StringKey to store theAtomicIntegerused to generate unique state map keys.Fields inherited from class com.sun.faces.renderkit.StateHelper
compressViewState, fieldEnd, fieldMiddle, serialProvider, stateFieldStart, webConfig -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected IntegerUtility method for obtaining theIntegerbased configuration values used to change the behavior of theServerSideStateHelper.getState(FacesContext ctx, String viewId) Inspects the incoming request parameters for the standardized state parameter name.protected ObjecthandleRestoreState(Object state) protected ObjecthandleSaveState(Object state) booleanisStateless(FacesContext facesContext, String viewId) Is stateless.voidwriteState(FacesContext ctx, Object state, StringBuilder stateCapture) Stores the provided state within the session obtained from the providedFacesContextMethods inherited from class com.sun.faces.renderkit.StateHelper
createAndStoreCryptographicallyStrongTokenInSession, getCryptographicallyStrongTokenFromSession, getStateParamValue, writeClientWindowField, writeRenderKitIdField
-
Field Details
-
STATEMANAGED_SERIAL_ID_KEY
Key to store theAtomicIntegerused to generate unique state map keys. -
LOGICAL_VIEW_MAP
The top level attribute name for storing the state structures within the session. -
numberOfLogicalViews
The number of logical views as configured by the user. -
numberOfViews
The number of views as configured by the user. -
generateUniqueStateIds
protected boolean generateUniqueStateIdsFlag determining how server state IDs are generated. -
random
Used to generate unique server state IDs.
-
-
Constructor Details
-
ServerSideStateHelper
public ServerSideStateHelper()Construct a newServerSideStateHelperinstance.
-
-
Method Details
-
writeState
public void writeState(FacesContext ctx, Object state, StringBuilder stateCapture) throws IOException Stores the provided state within the session obtained from the provided
FacesContextIf
stateCaptureisnull, the composite key used to look up the actual and logical views will be written to the client as a hidden field using theResponseWriterfrom the providedFacesContext.If
stateCaptureis notnull, the composite key will be appended to theStringBuilderwithout any markup included or any content written to the client.- Specified by:
writeStatein classStateHelper- Throws:
IOException- See Also:
-
getState
Inspects the incoming request parameters for the standardized state parameter name. In this case, the parameter value will be the composite ID generated by ServerSideStateHelper#writeState(FacesContext, Object, StringBuilder).
The composite key will be used to find the appropriate view within the session obtained from the provided
FacesContext- Specified by:
getStatein classStateHelper- See Also:
-
getIntegerConfigValue
Utility method for obtaining the
Integerbased configuration values used to change the behavior of theServerSideStateHelper.- Parameters:
param- the paramter to parse- Returns:
- the Integer representation of the parameter value
-
handleSaveState
-
handleRestoreState
-
isStateless
Is stateless.- Specified by:
isStatelessin classStateHelper- Parameters:
facesContext- the Faces context.viewId- the view id.- Returns:
- true if stateless, false otherwise.
- Throws:
IllegalStateException- when the request was not a postback.- See Also:
-