Uploaded image for project: 'Wicket'
  1. Wicket
  2. WICKET-4877

encodeUrl fails parsing jsessionid when using root context

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 1.5.9
    • 6.4.0, 1.5.10
    • None
    • None

    Description

      We are using Selenium 2.26.0 to test our Wicket application, using Jetty 6.1.25 (also tried 7.0.0.pre5) and Firefox 12 as client browser.

      With Wicket 1.5.8 everything worked fine but updating to 1.5.9 the following error occurs on first request:

      java.lang.NumberFormatException: For input string: "56704;jsessionid=t3j8z4tsuazh1jfbcnjr8ryg"
      at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
      at java.lang.Integer.parseInt(Integer.java:458)
      at java.lang.Integer.parseInt(Integer.java:499)
      at org.apache.wicket.request.Url.parse(Url.java:195)
      at org.apache.wicket.request.Url.parse(Url.java:121)
      at org.apache.wicket.protocol.http.servlet.ServletWebResponse.encodeURL(ServletWebResponse.java:194)
      at org.apache.wicket.protocol.http.HeaderBufferingWebResponse.encodeURL(HeaderBufferingWebResponse.java:161)
      at org.apache.wicket.request.cycle.RequestCycle.renderUrl(RequestCycle.java:524)
      at org.apache.wicket.request.cycle.RequestCycle.urlFor(RequestCycle.java:492)
      at org.apache.wicket.request.cycle.RequestCycle.urlFor(RequestCycle.java:477)
      at org.apache.wicket.Component.urlFor(Component.java:3319)
      at org.apache.wicket.markup.html.link.BookmarkablePageLink.getURL(BookmarkablePageLink.java:209)
      at org.apache.wicket.markup.html.link.Link.onComponentTag(Link.java:361)
      at org.apache.wicket.Component.internalRenderComponent(Component.java:2530)
      at org.apache.wicket.MarkupContainer.onRender(MarkupContainer.java:1530)
      at org.apache.wicket.Component.internalRender(Component.java:2389)
      at org.apache.wicket.Component.render(Component.java:2317)
      at org.apache.wicket.MarkupContainer.renderNext(MarkupContainer.java:1428)
      at org.apache.wicket.MarkupContainer.renderAll(MarkupContainer.java:1592)
      at org.apache.wicket.Page.onRender(Page.java:907)
      at org.apache.wicket.markup.html.WebPage.onRender(WebPage.java:140)
      at org.apache.wicket.Component.internalRender(Component.java:2389)
      at org.apache.wicket.Component.render(Component.java:2317)
      at org.apache.wicket.Page.renderPage(Page.java:1035)
      at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:118)
      at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:246)
      at org.apache.wicket.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:167)
      at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:784)
      at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:304)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:313)
      at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:227)
      at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:283)
      at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188)
      at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:244)

      Using debugger, the encodeUrl method has variables

      fullUrl = http://localhost:56704
      encodedFullUrl = http://localhost:56704;jsessionid=8kxeo3reannw1qjtxgkju8yiu

      before the exception occurs. I believe this is related to https://issues.apache.org/jira/browse/WICKET-4645.

      Attachments

        Issue Links

          Activity

            People

              svenmeier Sven Meier
              seco Jukka Siivonen
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: