Hi Chris,

>From the stacktrace seems like this is happening in your page's beginRender 
>listener. Perhaps you cannot throw this type of exception from here.

What i would suggest is that perhaps you can do this check and redirection in 
the BasePage.validate(IRequestCycle cycle) method.

You could also try AbstractPage.getRequestCycle() to get the request cycle and 
use that to go to the page you want to redirect to.

Regards,

Saqib

> -----Ursprüngliche Nachricht-----
> Von: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] 
> Gesendet: Monday, 22 May 2006 7:48 PM
> An: Tapestry users
> Betreff: Re: Uncaught PageRedirectionException (Tapestry 3.0.3)
> 
> No ideas or suggestions on this?
> 
> That's a bummer.
> 
> 
> 
> 
> 
> [EMAIL PROTECTED]
> 05/19/2006 03:18 PM
> Please respond to
> "Tapestry users" <users@tapestry.apache.org>
> 
> 
> To
> Tapestry users <users@tapestry.apache.org>
> cc
> 
> Subject
> Uncaught PageRedirectionException (Tapestry 3.0.3)
> 
> 
> 
> 
> 
> 
> I've been having a user presented exception that only seems 
> to occur when 
> the moon is right.
> 
> I have the following page flow...
> 
> Home -> Client Select -> Create
> 
> Now if the user meets certain criteria the "Client Select" 
> screen skips 
> the data entry and redirects to the user straight to the 
> create page.   As 
> 
> such.. 
> 
>         ...
>         if (redirect)
>         {
>             IPage page = 
> event.getRequestCycle().getPage(CreateUCR.getEIPageName());
>             throw new PageRedirectException(page);
>         }
>         ...
> 
> 
> I haven't gotten a good repro case, and I can't figure out why, but 
> occasionally the PageRedirectException isn't caught by the tapestry 
> framework and handled instead it migrates up to the user, and 
> the user is 
> displayed the exception page with the following...
> 
> An exception has occurred. 
> You may continue by restarting the session. 
> 
> org.apache.tapestry.PageRedirectException 
> CreateUCR 
> Stack Trace: 
> com.expd.app.frm.ui.page.sfd.CreateUCRClient.pageBeginRender(Unknown 
> Source) 
> org.apache.tapestry.AbstractPage.firePageBeginRender(AbstractP
> age.java:463) 
> 
> 
> org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:293) 
> org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycl
> e.java:368) 
> org.apache.tapestry.engine.AbstractEngine.renderResponse(Abstr
> actEngine.java:749) 
> 
> 
> org.apache.tapestry.engine.AbstractEngine.handlePageRedirectEx
> ception(AbstractEngine.java:1045) 
> 
> 
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngi
> ne.java:899) 
> 
> 
> org.apache.tapestry.ApplicationServlet.doService(ApplicationSe
> rvlet.java:198) 
> 
> 
> org.apache.tapestry.ApplicationServlet.doGet(ApplicationServle
> t.java:159) 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:689) 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802) 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(ApplicationFilterChain.java:237) 
> 
> 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterChain.java:157) 
> 
> 
> com.expd.app.frm.util.RequestControlFilter.doFilter(Unknown Source) 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilt
> er(ApplicationFilterChain.java:186) 
> 
> 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Appli
> cationFilterChain.java:157) 
> 
> 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardW
> rapperValve.java:214) 
> 
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:104) 
> 
> 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:520) 
> 
> 
> org.apache.catalina.core.StandardContextValve.invokeInternal(S
> tandardContextValve.java:198) 
> 
> 
> org.apache.catalina.core.StandardContextValve.invoke(StandardC
> ontextValve.java:152) 
> 
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:104) 
> 
> 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:520) 
> 
> 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHost
> Valve.java:137) 
> 
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:104) 
> 
> 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReport
> Valve.java:117) 
> 
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:102) 
> 
> 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:520) 
> 
> 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEn
> gineValve.java:109) 
> 
> 
> org.apache.catalina.core.StandardValveContext.invokeNext(Stand
> ardValveContext.java:104) 
> 
> 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipel
> ine.java:520) 
> 
> 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) 
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.
> java:160) 
> org.apache.coyote.http11.Http11Processor.process(Http11Process
> or.java:799) 
> 
> 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandle
r.processConnection(Http11Protocol.java:705) 
> 
> 
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoi
> nt.java:577) 
> 
> 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(
ThreadPool.java:683) 
> 
> 
> java.lang.Thread.run(Thread.java:534) 
> 
> 
> Any suggestions as to why this might be happening?
> 
> Thanks,
> 
> Chris
> 

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

Reply via email to