Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-32984

WSRP producer doesn't transfer render parameters from action phase to render phase

    Details

    • Type: Bug
    • Status: Verified
    • Resolution: Unresolved
    • Affects Version/s: 6.1.20 EE GA2
    • Fix Version/s: None
    • Component/s: WSRP
    • Labels:
      None
    • Fix Priority:
      3

      Description

      The problem is that there is a session lost between requests.

      Browser calls a (local) portal, WSRP consumer calls remote portal (WSRP provider) and our WSRP server implementation fires another request to /widget/ URL. There is where our JSESSIONIDs get lost.

      Please see attached wireshark.png, here is a short description of the calls:
      (1) BROWSER -> LOCAL PORTAL (clicked action on beammeupportlet WSRP portlet) JSESSIONID=21001229F4EF6311F1CED6DAB013F9B0
      action phase
      – (2) LOCAL PORTAL WSRP -> REMOTE PORTAL WSRP (calling remote portal using WSRP protocol - beammeupportlet) JSESSIONID=505306C07B06292F792C22136BCB5381
      ---- (3) REMOTE WSRP -> REMOTE PORTAL (triggering action on beammeupportlet in the portal using /widget/ URL) JSESSIONID=505306C07B06292F792C22136BCB5381
      ---- (3) REMOTE PORTAL -> REMOTE WSRP (result of the action) Set-Cookie: JSESSIONID=4B1EC952D2A3B95059EBC0FA3DF36053
      – (2) REMOTE PORTAL WSRP -> LOCAL PORTAL WSRP (response using WSRP protocol with rendered beammeupportlet)
      render phase
      – (4) LOCAL PORTAL WSRP -> REMOTE PORTAL WSRP (calling remote portal using WSRP protocol - arrivalportlet) JSESSIONID=505306C07B06292F792C22136BCB5381
      ---- (5) REMOTE WSRP -> REMOTE PORTAL (triggering render on arrivalportlet in the portal using /widget/ URL) JSESSIONID=505306C07B06292F792C22136BCB5381
      ---- (5) REMOTE PORTAL -> REMOTE WSRP (result of the render) Set-Cookie: JSESSIONID=EC184E0E32FD95A10E7F3616F4B0E953
      – (4) REMOTE PORTAL WSRP -> LOCAL PORTAL WSRP (response using WSRP protocol with rendered arrivalportlet)
      (1) LOCAL PORTAL -> BROWSER (rendered page)

      To reproduce on Tomcat, the servers must have different domain names so that tomcat doesn't reuse the jsessionid.

        Attachments

          Activity

            People

            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Days since last comment:
                4 years, 6 weeks ago

                Packages

                Version Package