Tapestry
  1. Tapestry
  2. TAPESTRY-1949

Component action requests where the action context contains a period are not parsed correctly leading to request failures

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 5.0.7
    • Fix Version/s: 5.0.7
    • Component/s: tapestry-core
    • Labels:
      None
    • Environment:
      winxp

      Description

      there seems to be a bug in processing action requests with string parameters containing dots

      listener:
      public void onMyAction(String componentId)

      { //some code }

      link generated for this listener:

      public String getTheLink()

      { Link l = _componentResources.createActionLink("myaction", false,"param.param"); return l.toURI(); }

      result link is something like:
      /ajax/start2:myaction/param.param

      clicking this link cause exception:

      • java.lang.StringIndexOutOfBoundsException
        String index out of range: -16

      Stack trace
      o java.lang.String.substring(String.java:1768)
      o org.apache.tapestry.internal.services.ComponentActionDispatcher.dispatch(ComponentActionDispatcher.java:83)
      o org.apache.tapestry.services.TapestryModule$12.service(TapestryModule.java:932)
      o org.example.ajax.services.AppModule$1.service(AppModule.java:85)
      o org.apache.tapestry.internal.services.LocalizationFilter.service(LocalizationFilter.java:43)
      o org.apache.tapestry.services.TapestryModule$2.service(TapestryModule.java:521)
      o org.apache.tapestry.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:79)
      o org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:94)
      o org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:85)
      o org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:77)
      o org.apache.tapestry.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:107)
      o org.apache.tapestry.services.TapestryModule$11.service(TapestryModule.java:915)
      o org.apache.tapestry.TapestryFilter.doFilter(TapestryFilter.java:164)
      o org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
      o org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
      o org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      o org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      o org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
      o org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
      o org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211)
      o org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      o org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
      o org.mortbay.jetty.Server.handle(Server.java:324)
      o org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
      o org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
      o org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
      o org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      o org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
      o org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
      o org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)

        Activity

        Alexander Turtsevitch created issue -
        Howard M. Lewis Ship made changes -
        Field Original Value New Value
        Assignee Howard M. Lewis Ship [ hlship ]
        Howard M. Lewis Ship made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Howard M. Lewis Ship made changes -
        Summary bug in processing action requests with string parameters containing dots Component action requests where the action context contains a period are not parsed correctly leading to request failures
        Howard M. Lewis Ship made changes -
        Status In Progress [ 3 ] Closed [ 6 ]
        Fix Version/s 5.0.7 [ 12312802 ]
        Resolution Fixed [ 1 ]
        Mark Thomas made changes -
        Workflow jira [ 12418388 ] Default workflow, editable Closed status [ 12567333 ]
        Mark Thomas made changes -
        Workflow Default workflow, editable Closed status [ 12567333 ] jira [ 12590207 ]

          People

          • Assignee:
            Howard M. Lewis Ship
            Reporter:
            Alexander Turtsevitch
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development