Tapestry
  1. Tapestry
  2. TAPESTRY-2522

RequestPathOptimizer will corrupt query parameters in the optimized URL if the parameters container slashes

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 5.0.13
    • Fix Version/s: 5.0.14
    • Component/s: None
    • Labels:
      None

      Description

      The RequestPathOptimizer removes repetitions of the slash-character from the url, including the parameters and therefore the client-state. If the base64-encoded client state contains data that encodes i.e. to 'Hasc//asc==' the optimizer changes the url from
      /context/start?t:state:client=Hasc//asc==
      to
      /context/start?t:state:client=Hasc/asc==
      which leads to deserialization errors.

      1. optimize-bug-fix.patch
        2 kB
        Mario Siegenthaler
      2. optimize-bug-testcase.patch
        2 kB
        Mario Siegenthaler

        Activity

        Hide
        Mario Siegenthaler added a comment -

        Extension to the RequestPathOptimizerImplTest showing the problem.

        Show
        Mario Siegenthaler added a comment - Extension to the RequestPathOptimizerImplTest showing the problem.
        Hide
        Mario Siegenthaler added a comment -

        Fixed the context-path in the testcase

        Show
        Mario Siegenthaler added a comment - Fixed the context-path in the testcase
        Hide
        Mario Siegenthaler added a comment -

        Proposed fix for this issue.

        Show
        Mario Siegenthaler added a comment - Proposed fix for this issue.

          People

          • Assignee:
            Howard M. Lewis Ship
            Reporter:
            Mario Siegenthaler
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 0.25h
              0.25h
              Remaining:
              Remaining Estimate - 0.25h
              0.25h
              Logged:
              Time Spent - Not Specified
              Not Specified

                Development