Alex, if you mean exception handling, I've just decorated RequestExceptionHandling like this:
public RequestExceptionHandler decorateRequestExceptionHandler( final Logger logger, final Response response, @Symbol(SymbolConstants.PRODUCTION_MODE) boolean productionMode) { if (!productionMode) return null; return new RequestExceptionHandler() { public void handleRequestException(Throwable exception) throws IOException { logger.error("Unexpected runtime exception: " + exception.getMessage(), exception); response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, null); } }; } Then in web.xml I added 500 error page: ... <error-page> <error-code>500</error-code> <location>/500.html</location> </error-page> </web-app> I also ended with writing custom filter wrapping T5 to not load tapestry for non-tapestry related requests wich may affect T5 by /* filter url pattern. Not sure if I have some really generic code for tapestry5-gae. However there are some tips & tricks I may share about tapestry5 for gae/j. Probably I will write blogpost (or page in T5 wiki) on this later this/next month. On Mon, Jun 7, 2010 at 08:17, Alex Kotchnev <akoch...@gmail.com> wrote: > Dmitry, > could you possibly share what you come up with - this seems like > something generically useful when running in GAE . Is there any possiblity > for tapestry5-gae module ? > > Regards, > > Alex K > > On Wed, Jun 2, 2010 at 2:38 PM, Dmitry Gusev <dmitry.gu...@gmail.com> > wrote: > > > I'm thinking how to handle > > com.google.apphosting.api.DeadlineExceededException. > > This exception thrown in GAE if request processed more than 30 seconds > and > > I > > have only ~400 ms to handle this error untill > > com.google.apphosting.runtime.HardDeadlineExceededError thrown. > > > > I was thinking to override filter and wrap doFilter with try/catch. But > now > > I see that there is RequestExceptionHandler for these purposes. > > Looks like DefaultRequestExceptionHandler can't handle exception in 400 > ms. > > I think I will override this handler and just send response redirect to > > some > > static 500.html page. > > > > On Wed, Jun 2, 2010 at 21:25, Howard Lewis Ship <hls...@gmail.com> > wrote: > > > > > What are you trying to accomplish? Tapestry already has great > > > mechanisms for extending the request processing behavior, including > > > dealing with thrown exceptions. That's why such methods are final, to > > > encourage you to look in the correct place. > > > > > > On Wed, Jun 2, 2010 at 10:14 AM, Dmitry Gusev <dmitry.gu...@gmail.com> > > > wrote: > > > > I need to override this method to wrap it with try/catch but can't do > > it > > > > right now. > > > > > > > > Is there any reason why this method was declared final? > > > > > > > > -- > > > > Dmitry Gusev > > > > > > > > AnjLab Team > > > > http://anjlab.com > > > > > > > > > > > > > > > > -- > > > Howard M. Lewis Ship > > > > > > Creator of Apache Tapestry > > > > > > The source for Tapestry training, mentoring and support. Contact me to > > > learn how I can get you up and productive in Tapestry fast! > > > > > > (971) 678-5210 > > > http://howardlewisship.com > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org > > > For additional commands, e-mail: users-h...@tapestry.apache.org > > > > > > > > > > > > -- > > Dmitry Gusev > > > > AnjLab Team > > http://anjlab.com > > > -- Dmitry Gusev AnjLab Team http://anjlab.com