Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-342

Form with a zone is getting an action of "#" on submit from IE 6

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Fixed
    • 5.0.16
    • 5.0.16
    • tapestry-core
    • None

    Description

      Using tapestry 5.0.16-Snapshot on jetty 5.1 with java 1.5_16

      With the following form:
      <div id="send" >
      <form t:id="form" zone="chatLineZone">

      <input t:type="TextField" t:id="chatLineContents" t:validate="required" size="90"/>

      <input type="submit" value="Send"/>
      </form>
      </div>
      <t:zone id="chatLineZone" visible="false"/>

      Using 5.0.16 this generates the following html:
      <form action="#" id="form" method="post" name="form">

      When I submit this form in Firefox 3.0.3 it works fine but when I submit it fromo IE 6 I get the following stack trace in Tapestry:

      [ERROR] TapestryModule.RequestExceptionHandler Processing of request failed with uncaught exception: Input string 'chatroom#' is not valid; the character '#' at position 9 is not valid.
      java.lang.IllegalArgumentException: Input string 'chatroom#' is not valid; the character '#' at position 9 is not valid.
      at org.apache.tapestry5.internal.services.URLEncoderImpl.decode(URLEncoderImpl.java:143)
      at $URLEncoder_11d7db2f72d.decode($URLEncoder_11d7db2f72d.java)
      at org.apache.tapestry5.internal.services.ContextPathEncoderImpl.decodePath(ContextPathEncoderImpl.java:70)
      at $ContextPathEncoder_11d7db2f72a.decodePath($ContextPathEncoder_11d7db2f72a.java)
      at org.apache.tapestry5.internal.services.PageRenderDispatcher.process(PageRenderDispatcher.java:88)
      at org.apache.tapestry5.internal.services.PageRenderDispatcher.dispatch(PageRenderDispatcher.java:81)
      at $Dispatcher_11d7db2f72b.dispatch($Dispatcher_11d7db2f72b.java)
      at $Dispatcher_11d7db2f71d.dispatch($Dispatcher_11d7db2f71d.java)
      at org.apache.tapestry5.services.TapestryModule$17.service(TapestryModule.java:1029)
      at org.apache.tapestry5.internal.services.LocalizationFilter.service(LocalizationFilter.java:42)
      at $RequestHandler_11d7db2f71e.service($RequestHandler_11d7db2f71e.java)
      at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
      at $RequestHandler_11d7db2f71e.service($RequestHandler_11d7db2f71e.java)
      at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:621)
      at $RequestHandler_11d7db2f71e.service($RequestHandler_11d7db2f71e.java)
      at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:611)
      at $RequestHandler_11d7db2f71e.service($RequestHandler_11d7db2f71e.java)
      at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:85)
      at $RequestHandler_11d7db2f71e.service($RequestHandler_11d7db2f71e.java)
      at ie.barrydev.chatroom.services.AppModule$1.service(AppModule.java:85)
      at $RequestFilter_11d7db2f718.service($RequestFilter_11d7db2f718.java)
      at $RequestHandler_11d7db2f71e.service($RequestHandler_11d7db2f71e.java)
      at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:93)
      at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:84)
      at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:83)
      at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:106)
      at $RequestHandler_11d7db2f71e.service($RequestHandler_11d7db2f71e.java)
      at $RequestHandler_11d7db2f714.service($RequestHandler_11d7db2f714.java)
      at org.apache.tapestry5.services.TapestryModule$16.service(TapestryModule.java:1007)
      at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
      at $HttpServletRequestFilter_11d7db2f713.service($HttpServletRequestFilter_11d7db2f713.java)
      at $HttpServletRequestHandler_11d7db2f715.service($HttpServletRequestHandler_11d7db2f715.java)
      at $HttpServletRequestHandler_11d7db2f712.service($HttpServletRequestHandler_11d7db2f712.java)
      at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:179)
      at org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(WebApplicationHandler.java:821)
      at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:471)
      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:568)
      at org.mortbay.http.HttpContext.handle(HttpContext.java:1530)
      at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:633)
      at org.mortbay.http.HttpContext.handle(HttpContext.java:1482)
      at org.mortbay.http.HttpServer.service(HttpServer.java:909)
      at org.mortbay.http.HttpConnection.service(HttpConnection.java:820)
      at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:986)
      at org.mortbay.http.HttpConnection.handle(HttpConnection.java:837)
      at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:245)
      at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
      at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)

      Going to 5.0.15 resolves the issue, the following html is generated in that case:
      <form action="chatroom.form" id="form" method="post" name="form">

      Attachments

        Activity

          People

            hlship Howard Lewis Ship
            barrytapdev Barry
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: