Home » Mojarra-2.0.1 » javax » faces » render » [javadoc | source]
javax.faces.render
abstract public class: ResponseStateManager [javadoc | source]
java.lang.Object
   javax.faces.render.ResponseStateManager

ResponseStateManager is the helper class to javax.faces.application.StateManager that knows the specific rendering technology being used to generate the response. It is a singleton abstract class, vended by the RenderKit . This class knows the mechanics of saving state, whether it be in hidden fields, session, or some combination of the two.

Field Summary
public static final  String RENDER_KIT_ID_PARAM   

The name of the request parameter used by the default implementation of javax.faces.application.ViewHandler#calculateRenderKitId to derive a RenderKit ID.

 
public static final  String VIEW_STATE_PARAM   

Implementations must use this value as the name and id of the client parameter in which to save the state between requests.

It is strongly recommend that implementations guard against cross site scripting attacks by at least making the value of this parameter difficult to predict.

    since: 1.2 -
 
Method from javax.faces.render.ResponseStateManager Summary:
getComponentStateToRestore,   getState,   getTreeStructureToRestore,   getViewState,   isPostback,   writeState,   writeState
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from javax.faces.render.ResponseStateManager Detail:
 public Object getComponentStateToRestore(FacesContext context) 
Deprecated! This - method has been replaced by #getState . The default implementation returns null.

    The implementation must inspect the current request and return the component state Object passed to it on a previous invocation of writeState().

 public Object getState(FacesContext context,
    String viewId) 

    The implementation must inspect the current request and return an Object representing the tree structure and component state passed in to a previous invocation of #writeState(javax.faces.context.FacesContext,java.lang.Object) .

    For backwards compatability with existing ResponseStateManager implementations, the default implementation of this method calls #getTreeStructureToRestore and #getComponentStateToRestore and creates and returns a two element Object array with element zero containing the structure property and element one containing the state property of the SerializedView.

 public Object getTreeStructureToRestore(FacesContext context,
    String viewId) 
Deprecated! This - method has been replaced by #getState . The default implementation returns null.

    The implementation must inspect the current request and return the tree structure Object passed to it on a previous invocation of writeState().

 public String getViewState(FacesContext context,
    Object state) 

    Return the specified state as a String without any markup related to the rendering technology supported by this ResponseStateManager.

 public boolean isPostback(FacesContext context) 

    Return true if the current request is a postback. This method is leveraged from the Restore View Phase to determine if javax.faces.application.ViewHandler#restoreView or javax.faces.application.ViewHandler#createView should be called. The default implementation must return true if this ResponseStateManager instance wrote out state on a previous request to which this request is a postback, false otherwise.

    The implementation if this method for the Standard HTML RenderKit must consult the javax.faces.context.ExternalContext 's requestParameterMap and return true if and only if there is a key equal to the value of the symbolic constant #VIEW_STATE_PARAM .

    For backwards compatability with implementations of ResponseStateManager prior to JSF 1.2, a default implementation is provided that consults the javax.faces.context.ExternalContext 's requestParameterMap and return true if its size is greater than 0.

 public  void writeState(FacesContext context,
    Object state) throws IOException 
 public  void writeState(FacesContext context,
    SerializedView state) throws IOException 
Deprecated! This - method has been replaced by #writeState(javax.faces.context.FacesContext,java.lang.Object) . The default implementation creates a two element Object array with the first element being the return from calling SerializedView#getStructure , and the second being the return from SerializedView#getState . It then passes this Object array to #writeState .

    Take the argument state and write it into the output using the current ResponseWriter , which must be correctly positioned already.

    If the javax.faces.application.StateManager.SerializedView is to be written out to hidden fields, the implementation must take care to make all necessary character replacements to make the Strings suitable for inclusion as an HTTP request paramater.

    If the state saving method for this application is javax.faces.application.StateManager#STATE_SAVING_METHOD_CLIENT , the implementation may encrypt the state to be saved to the client. We recommend that the state be unreadable by the client, and also be tamper evident. The reference implementation follows these recommendations.