Interface TransientStateHolder

All Known Subinterfaces:
TransientStateHelper
All Known Implementing Classes:
HtmlBody, HtmlColumn, HtmlCommandButton, HtmlCommandLink, HtmlCommandScript, HtmlDataTable, HtmlDoctype, HtmlForm, HtmlGraphicImage, HtmlHead, HtmlInputFile, HtmlInputHidden, HtmlInputSecret, HtmlInputText, HtmlInputTextarea, HtmlMessage, HtmlMessages, HtmlOutcomeTargetButton, HtmlOutcomeTargetLink, HtmlOutputFormat, HtmlOutputLabel, HtmlOutputLink, HtmlOutputText, HtmlPanelGrid, HtmlPanelGroup, HtmlSelectBooleanCheckbox, HtmlSelectManyCheckbox, HtmlSelectManyListbox, HtmlSelectManyMenu, HtmlSelectOneListbox, HtmlSelectOneMenu, HtmlSelectOneRadio, UIColumn, UICommand, UIComponent, UIComponentBase, UIData, UIForm, UIGraphic, UIImportConstants, UIInput, UIMessage, UIMessages, UINamingContainer, UIOutcomeTarget, UIOutput, UIPanel, UIParameter, UISelectBoolean, UISelectItem, UISelectItems, UISelectMany, UISelectOne, UIViewAction, UIViewParameter, UIViewRoot, UIWebsocket

public interface TransientStateHolder

This interface is implemented by classes that need to save state that is expected to be available only within the scope of the current request.

An implementor must implement both saveTransientState(jakarta.faces.context.FacesContext) and restoreTransientState(jakarta.faces.context.FacesContext, java.lang.Object) methods in this class, since these two methods have a tightly coupled contract between themselves. In other words, if there is an inheritance hierarchy, it is not permissible to have the saveTransientState(jakarta.faces.context.FacesContext) and restoreTransientState(jakarta.faces.context.FacesContext, java.lang.Object) methods reside at different levels of the hierarchy.

An example of transient state is the "submitted" property on forms.

Since:
2.1
  • Method Details

    • saveTransientState

      Object saveTransientState(FacesContext context)

      Return the object containing related "transient states". that could be used later to restore the "transient state".

      Parameters:
      context - the Faces context.
      Returns:
      object containing transient values
      Since:
      2.1
    • restoreTransientState

      void restoreTransientState(FacesContext context, Object state)

      Restore the "transient state" using the object passed as state.

      If the state argument is null clear any previous transient state if any and return.

      Parameters:
      context - the Faces context
      state - the object containing transient values
      Since:
      2.1