Cocoon
  1. Cocoon
  2. COCOON-2298

IncludeTransformer does not handle multi-valued parameters

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 2.1.11
    • Fix Version/s: None
    • Component/s: * Cocoon Core
    • Labels:
      None
    • Urgency:
      Urgent
    • Other Info:
      Patch available
    • Affects version (Component):
      Cocoon Core
    • Fix version (Component):
      Cocoon Core

      Description

      When you pass multivalued parameters to org.apache.cocoon.transformation.IncludeTransformer, like:
         <ci:parameter name="foo" value="bar"/>
         <ci:parameter name="foo" value="baz"/>
      only the last gets passed in the request made by IncludeTransformer. This is because parameters are stored in a Map.

      HTTP specifies that multi-valued parameters are possible, or rather it does not forbid them. So the query-string "?foo=bar&foo=baz" is perfectly legal.

      The patch changes the way IncludeTransformer handles this case, so that multi-valued parameters are handled correctly. The NetUtils.parameterize() method, used by IncludeTransformer, was already prepared for this.

        Activity

        Hide
        Nico Verwer added a comment -
        This patch makes IncludeTransformer handle multi-valued parameters correctly.
        Show
        Nico Verwer added a comment - This patch makes IncludeTransformer handle multi-valued parameters correctly.

          People

          • Assignee:
            Unassigned
            Reporter:
            Nico Verwer
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:

              Development