Tapestry should ignore the paths that tapestry can not resolve and let 
container deal with those paths
------------------------------------------------------------------------------------------------------

                 Key: TAPESTRY-1960
                 URL: https://issues.apache.org/jira/browse/TAPESTRY-1960
             Project: Tapestry
          Issue Type: Bug
          Components: tapestry-core
    Affects Versions: 5.0.5
         Environment: Win XP sp2, Apache Tomcat Server 5.5.23
            Reporter: Ritesh Sandupatla


I am using Tapestry core 5.0.5.
I integrated Tapestry 5 and hibernate.

I configured my application's web.xml as below -

        <context-param>
                <param-name>tapestry.app-package</param-name>
                <param-value>com.myproject</param-value>
        </context-param>
       
        <filter>
            <filter-name>tapestryFilter</filter-name>
            <filter-class>org.apache.tapestry.TapestryFilter</filter-class>
        </filter>

        <filter-mapping>
                        <filter-name>tapestryFilter</filter-name>
                        <url-pattern>/*</url-pattern>
        </filter-mapping> 

This works perfect with all Tapestry related pages.
At certain operation in my application when a file is being uploaded from jsp 
page by using
servlet it generates output with .htm which fires a Tapestry Page not found 
exception.
When the application generates url - packageName/FileName.htm  it throws this 
exception.
Tapestry should ignore the paths that tapestry can not resolve and let 
container deal with those paths.

Stack Trace is as below  -
An unexpected application exception has occurred.

    * java.lang.IllegalArgumentException
      Unable to resolve page 'packageName/FileName' to a known page name. 
Available page names: core/ExceptionReport, core/PropertyDisplayBlocks, 
core/PropertyEditBlocks, pacakage/page1, pacakage/page1.

      Stack trace
              o 
org.apache.tapestry.internal.services.ComponentClassResolverImpl$8.invoke
(ComponentClassResolverImpl.java:393)
              o 
org.apache.tapestry.internal.services.ComponentClassResolverImpl$8.invoke
(ComponentClassResolverImpl.java:388)
              o 
org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:77)
              o 
org.apache.tapestry.internal.services.ComponentClassResolverImpl.canonicalizePageName
(ComponentClassResolverImpl.java:386)
              o 
org.apache.tapestry.internal.services.PagePoolImpl.checkout(PagePoolImpl.java:59)
              o 
org.apache.tapestry.internal.services.RequestPageCacheImpl.get(RequestPageCacheImpl.java:44)
              o 
org.apache.tapestry.internal.services.RequestEncodingInitializerImpl.initializeRequestEncoding
(RequestEncodingInitializerImpl.java:42)
              o 
org.apache.tapestry.internal.services.InternalModule$11.handle(InternalModule.java:539)
              o 
org.apache.tapestry.internal.services.ComponentActionDispatcher.dispatch
(ComponentActionDispatcher.java:116)
              o 
org.apache.tapestry.services.TapestryModule$12.service(TapestryModule.java:1066)
              o 
org.apache.tapestry.internal.services.LocalizationFilter.service(LocalizationFilter.java:43)
              o 
org.apache.tapestry.services.TapestryModule$2.service(TapestryModule.java:657)
              o 
org.apache.tapestry.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:63)
              o 
org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:97)
              o 
org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:88)
              o 
org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:77)
              o 
org.apache.tapestry.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:110)
              o 
org.apache.tapestry.services.TapestryModule$11.service(TapestryModule.java:1044)
              o 
org.apache.tapestry.TapestryFilter.doFilter(TapestryFilter.java:135)
              o 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
              o 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
              o 
net.project.security.SessionAccessFilter.doFilter(SessionAccessFilter.java:79)
              o 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
              o 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
              o 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
              o 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
              o 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
              o 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
              o 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
              o 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
              o 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
              o 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection
(Http11BaseProtocol.java:665)
              o 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
              o 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
              o 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
              o java.lang.Thread.run(Unknown Source) 

I tried to change <url-pattern> to - /package/* , this solves my problem of 
uploading and
all tapestry action requests are successfully handled but all Tapestry pages 
are displayed
with   -  [Error] - like text in front of every Tapestry component on that page.
This - [Error] - is actually alt text for error image of Tapestry, displays on 
validation error.


-- 
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