bug in processing action requests with string parameters containing dots
------------------------------------------------------------------------

                 Key: TAPESTRY-1949
                 URL: https://issues.apache.org/jira/browse/TAPESTRY-1949
             Project: Tapestry
          Issue Type: Bug
          Components: tapestry-core
    Affects Versions: 5.0.7
         Environment: winxp
            Reporter: Alexander Turtsevitch


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) 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to