ICEfaces
  1. ICEfaces
  2. ICE-4434

Ajax push doesn't work anymore after a page change in liferay portal

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.8
    • Fix Version/s: 1.8.3, 1.8.2-EE-GA_P02
    • Component/s: Bridge
    • Labels:
      None
    • Environment:
      portlet: liferay 5.1.2
    • Workaround Exists:
      Yes
    • Workaround Description:
      Reregister the session after each page change.

      Description

      I register a session using the SessionRenderer. Ajax push works.
      After I go to another portal page (with the same session), push doen't work anymore.


      I think the problem the following:
      Each portlet has its own session wrapper (a InterceptingPortletSession) and the GroupAsyncRenderer has a Set of weak references to the session wrappers it belongs.
      Now if the portal page changes, the portlets of the old page are not used anymore.
      Therefore their session wrappers are eligible for garbage collection and the weak references in the GroupAsync Renderer can become null.
      When this happens, the whole renderer is removed and push doen't work anymore.

      A solution could be not to use a portelt session wrapper but the "real" session that is GCed only after a logout or session timeout.

        Issue Links

          Activity

          Stefan Niederhauser created issue -
          Hide
          Deryk Sinotte added a comment -

          Duplicate of ICE-5184

          Show
          Deryk Sinotte added a comment - Duplicate of ICE-5184
          Deryk Sinotte made changes -
          Field Original Value New Value
          Status Open [ 1 ] Resolved [ 5 ]
          Fix Version/s 1.8.2-EE-GA_P02 [ 10226 ]
          Fix Version/s 1.8.3 [ 10211 ]
          Resolution Duplicate [ 3 ]
          Assignee Deryk Sinotte [ deryk.sinotte ]
          Deryk Sinotte made changes -
          Link This issue duplicates ICE-5184 [ ICE-5184 ]
          Ken Fyten made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Assignee Deryk Sinotte [ deryk.sinotte ]
          Ken Fyten made changes -
          Resolution Duplicate [ 3 ]
          Status Closed [ 6 ] Reopened [ 4 ]
          Assignee Priority P1
          Ken Fyten made changes -
          Status Reopened [ 4 ] Resolved [ 5 ]
          Assignee Priority P1
          Resolution Fixed [ 1 ]
          Ken Fyten made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            People

            • Assignee:
              Unassigned
              Reporter:
              Stefan Niederhauser
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: