Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-74114 Make Liferay compatible with version 2.0 tests in the Portlet 3.0 TCK
  3. LPS-76159

Portlet 3.0 TCK: The parameters set by query string are not aggregated with the render parameters when dispatching from a servlet to another servlet

Details

    Description

      Test failures:

      • V2DispatcherTests5_SPEC2_19_IncThenForwardServletAction_dispatch2
      • V2DispatcherTests5_SPEC2_19_IncThenForwardServletEvent_dispatch2
      • V2DispatcherTests5_SPEC2_19_IncThenForwardServletRender_dispatch2
      • V2DispatcherTests5_SPEC2_19_IncThenForwardServletResource_dispatch2
      • V2DispatcherTests5_SPEC2_19_IncThenIncludeServletAction_dispatch2
      • V2DispatcherTests5_SPEC2_19_IncThenIncludeServletEvent_dispatch2
      • V2DispatcherTests5_SPEC2_19_IncThenIncludeServletRender_dispatch2
      • V2DispatcherTests5_SPEC2_19_IncThenIncludeServletResource_dispatch2
      • V2DispatcherTests6_SPEC2_19_FwdThenForwardServletAction_dispatch2
      • V2DispatcherTests6_SPEC2_19_FwdThenForwardServletEvent_dispatch2
      • V2DispatcherTests6_SPEC2_19_FwdThenForwardServletRender_dispatch2
      • V2DispatcherTests6_SPEC2_19_FwdThenForwardServletResource_dispatch2
      • V2DispatcherTests6_SPEC2_19_FwdThenIncludeServletAction_dispatch2
      • V2DispatcherTests6_SPEC2_19_FwdThenIncludeServletEvent_dispatch2
      • V2DispatcherTests6_SPEC2_19_FwdThenIncludeServletRender_dispatch2
      • V2DispatcherTests6_SPEC2_19_FwdThenIncludeServletResource_dispatch2

      For example,

      V2DispatcherTests5_SPEC2_19_IncThenIncludeServletResource_dispatch2: Details: In a servlet included by the target of an include, parameters specified in the query strings must be aggregated with the portlet render parameters. qparm2 length=1

      Background:

      According to PLT 25.1.1

      The portlet container must aggregate parameters specified in the query string used to create the PortletRequestDispatcher with the portlet render parameters. Query string parameters take precedence over other portlet render parameters of the same name passed to the servlet or JSP targeted by the forward or include. The parameters associated with a PortletRequestDispatcher are scoped to apply only for the duration of the forward or include call.

      The failing test cases first dispatch the portlet request from portlet to a servlet, and then dispatch the request from the servlet to another servlet.

      In Liferay, for the first dispatching, the parameters defined in query string will be merged to the request by our PortletRequestDispatcherImpl; however, for the second dispatching, the dispatcher is obtained from a servlet request, which is a servlet's RequestDispatcher, which doesn't do the aggregate.

       

       

      Attachments

        Issue Links

          Activity

            People

              brian.chan Brian Chan
              dante.wang Dante Wang
              Kiyoshi Lee Kiyoshi Lee
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                5 years, 1 week, 5 days ago

                Packages

                  Version Package
                  7.0.0 DXP FP33
                  7.0.0 DXP SP7
                  7.0.5 CE GA6
                  7.0.X
                  Master