Uploaded image for project: 'MyFaces Core'
  1. MyFaces Core
  2. MYFACES-4048

TransientStateHolder values must be stored in the state if current phase is before render response

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 2.2.11
    • None
    • None

    Description

      In JSF 2.1, it was introduced an interface called TransientStateHolder. According to the javadoc, the idea of this API is:

      "... 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. ..."

      This API is used in very, very few cases (only used once in JSF 2.2 core to hold FaceletState temporally), but in portlet case, it is expected that when you call saveState(...) over the component on a phase different than render response phase, this transient state should be saved with the component state too.

      This behavior was not originally thought (because in the JSF EG we never went that far to consider portlets) but it has a lot of sense, and in the "spirit" to make things just work, I think we need a new issue for this behavior too.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            lu4242 Leonardo Uribe
            lu4242 Leonardo Uribe
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment