Jetspeed 2
  1. Jetspeed 2
  2. JS2-1222

Nested Portlet servlet include dispatch is failing for a ResourceRequest on Websphere 6.1.0.23 when targeting a filter (like WicketFilter)

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.2.1
    • Fix Version/s: 2.2.2
    • Component/s: Admin Portlets
    • Labels:
      None

      Description

      The problem is caused by incorrect order of retrieving a request attribute within a Portlet dispatched servlet.
      First the PortletRequest (cached) attributes needs to be evaluated before delegating to the web container.
      This is needed as the web container itself might have already set the attribute value before which only is stored in the PortletRequest attribute cache (within the PortletWindow).
      In particular this failed when using a ResourceRequest which is from the portal forwarded to the portlet.
      If that portlet subsequently dispatched again using an include, Websphere still saw the initial dispatcher type (forward) instead of the current type (include), causing it to fail finding the appropriate filter.

      Fixing this required changes to both the pluto-container (see: PLUTO-598) as well as the jetspeed-portal artifacts.

        Activity

        Vivek Kumar created issue -
        Ate Douma made changes -
        Field Original Value New Value
        Assignee Vivek Kumar [ firevelocity ] Ate Douma [ adouma ]
        Ate Douma made changes -
        Summary Portal Site manager is not working on Websphere 6.1.0.23 Nested Portlet servlet include dispatch is failing for a ResourceRequest on Websphere 6.1.0.23 when targeting a filter (like Wicket)
        Fix Version/s 2.2.2 [ 12313846 ]
        Affects Version/s 2.2.1 [ 12313443 ]
        Description The problem is caused by incorrect order of retrieving a request attribute within a Portlet dispatched servlet.
        First the PortletRequest (cached) attributes needs to be evaluated before delegating to the web container.
        This is needed as the web container itself might have already set the attribute value before which *only* is stored in the PortletRequest attribute cache (within the PortletWindow).
        In particular this failed when using a ResourceRequest which is from the portal *forwarded* to the portlet.
        If that portlet subsequently dispatched again using an *include*, Websphere still saw the initial dispatcher type (forward) instead of the current type (include), causing it to fail finding the appropriate filter.

        Fixing this required changes to both the pluto-container (see: PLUTO-598) as well as the jetspeed-portal artifacts.
        Ate Douma made changes -
        Summary Nested Portlet servlet include dispatch is failing for a ResourceRequest on Websphere 6.1.0.23 when targeting a filter (like Wicket) Nested Portlet servlet include dispatch is failing for a ResourceRequest on Websphere 6.1.0.23 when targeting a filter (like WicketFilter)
        Ate Douma made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]

          People

          • Assignee:
            Ate Douma
            Reporter:
            Vivek Kumar
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development