ICEfaces
  1. ICEfaces
  2. ICE-8021

Do not create WindowScopeManager unless necessary

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: EE-3.0.0.GA
    • Fix Version/s: 3.1
    • Component/s: Framework
    • Labels:
      None
    • Environment:
      ICEfaces
    • Assignee Priority:
      P2

      Description


      The following objects are placed in the session even if WindowScope is not used:

      org.icefaces.impl.application.WindowScopeManager
      org.icefaces.impl.application.WindowScopeManager$SessionSynchronizatio

      If possible, this should be created lazily.

        Activity

        Hide
        Mircea Toma added a comment -

        The WindowScopeManager needs to exists from the beginning in the session, creating and setting it up only when needed is not possible because the manager needs to keep track of the opened and closed windows all the time. It can be imagined a scenario where the first loaded page does not have a window scope bean, after forward navigating to the next page this will have a window scope bean. The window hasn't changed in the mean while just the rendered view, hence the continuous need for WindowScopeManager.

        Actually the scenario described above was implemented as a test which confirmed the conceptual analysis.

        Show
        Mircea Toma added a comment - The WindowScopeManager needs to exists from the beginning in the session, creating and setting it up only when needed is not possible because the manager needs to keep track of the opened and closed windows all the time. It can be imagined a scenario where the first loaded page does not have a window scope bean, after forward navigating to the next page this will have a window scope bean. The window hasn't changed in the mean while just the rendered view, hence the continuous need for WindowScopeManager. Actually the scenario described above was implemented as a test which confirmed the conceptual analysis.
        Hide
        Mircea Toma added a comment -

        Also org.icefaces.impl.application.WindowScopeManager$SessionSynchronizationMonitor object cannot be integrated into the org.icefaces.impl.application.WindowScopeManager class because its lifetime (mainly its instantiation) is slightly different than the one the manager has.

        Show
        Mircea Toma added a comment - Also org.icefaces.impl.application.WindowScopeManager$SessionSynchronizationMonitor object cannot be integrated into the org.icefaces.impl.application.WindowScopeManager class because its lifetime (mainly its instantiation) is slightly different than the one the manager has.

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Ted Goddard
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: