Uploaded image for project: 'Tapestry'
  1. Tapestry
  2. TAPESTRY-1947

Mangled URLs that should result in standard 404 error pages are instead resulting in a Tapestry exception report

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 5.0.6
    • 5.0.7
    • tapestry-core
    • None

    Description

      Quick summary: Tapestry 5.0.6 doesn't check the existence of a page when an URL which looks like an action request is requested (any url that has a period).

      Long description:

      If I request the page /xxx, where xxx is a non-existing page, T5 raises a
      standard HTTP 404 error that I'm able to catch through the <error-page>
      tag in my web.xml. So far, so good.

      If I request the page /xxx.html, where xxx is a non-existing page, T5 does
      not raise a 404 error: it throws an IllegalArgumentException:

      java.lang.IllegalArgumentException: Unable to resolve 'cursos/id10' to a
      known page name. Available page names: [list of my Tapestry pages].
      at
      org.apache.tapestry.internal.services.ComponentClassResolverImpl$8.invoke(ComponentClassResolverImpl.java:417)
      at
      org.apache.tapestry.internal.services.ComponentClassResolverImpl$8.invoke(ComponentClassResolverImpl.java:412)
      at
      org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:77)
      at
      org.apache.tapestry.internal.services.ComponentClassResolverImpl.canonicalizePageName(ComponentClassResolverImpl.java:410)
      at
      $ComponentClassResolver_1166cebf61d.canonicalizePageName($ComponentClassResolver_1166cebf61d.java)
      at
      org.apache.tapestry.internal.services.PagePoolImpl.checkout(PagePoolImpl.java:59)
      [snip]

      It looks like non-existent pages checks are done with normal page
      requests, but not with action requests.

      Attachments

        Activity

          People

            hlship Howard Lewis Ship
            thiagohp Thiago Henrique De Paula Figueiredo
            Votes:
            2 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: