You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Tom Davies (JIRA)" <ta...@jakarta.apache.org> on 2007/03/01 03:59:50 UTC
[jira] Updated: (TAPESTRY-1308) Exceptions while building services
are poorly reported
[ https://issues.apache.org/jira/browse/TAPESTRY-1308?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tom Davies updated TAPESTRY-1308:
---------------------------------
Attachment: tapestry-1308.patch
Patch which logs original exception iff the error page can't be displayed
> Exceptions while building services are poorly reported
> ------------------------------------------------------
>
> Key: TAPESTRY-1308
> URL: https://issues.apache.org/jira/browse/TAPESTRY-1308
> Project: Tapestry
> Issue Type: Improvement
> Components: IoC Container
> Affects Versions: 5.0
> Reporter: Tom Davies
> Attachments: log.txt, tapestry-1308.patch
>
>
> Take the sample app built by tapestry-simple, and change buildTimingFilter to:
> public RequestFilter buildTimingFilter(final Log log, final @InjectService("Test") Object test)
> ... body unchanged ...
> Add:
> public static Object buildTest()
> {
> throw new RuntimeException("Bang");
> }
> When you run this, you get a 500 page:
> HTTP ERROR: 500
> INTERNAL_SERVER_ERROR
> RequestURI=/myapp/start
> Caused by:
> java.lang.NullPointerException
> at $Request_1110563691a.getContextPath($Request_1110563691a.java)
> at $Request_111056368ca.getContextPath($Request_111056368ca.java)
> at org.apache.tapestry.internal.services.RequestRenderer.render(RequestRenderer.java:34)
> at org.apache.tapestry.internal.services.RequestRenderer.render(RequestRenderer.java:24)
> at $ObjectRenderer_11105636919.render($ObjectRenderer_11105636919.java)
> at $ObjectRenderer_111056368c7.render($ObjectRenderer_111056368c7.java)
> at org.apache.tapestry.corelib.components.RenderObject.beginRender(RenderObject.java:37)
> at org.apache.tapestry.corelib.components.RenderObject.beginRender(RenderObject.java)
> at org.apache.tapestry.internal.structure.ComponentPageElementImpl$10$1.run(ComponentPageElementImpl.java:334)
> at org.apache.tapestry.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:931)
> at org.apache.tapestry.internal.structure.ComponentPageElementImpl.access$100(ComponentPageElementImpl.java:68)
> at org.apache.tapestry.internal.structure.ComponentPageElementImpl$10.render(ComponentPageElementImpl.java:338)
> at org.apache.tapestry.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:57)
> at org.apache.tapestry.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:40)
> at $PageMarkupRenderer_11105636915.renderPageMarkup($PageMarkupRenderer_11105636915.java)
> at org.apache.tapestry.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:45)
> at $PageResponseRenderer_111056368da.renderPageResponse($PageResponseRenderer_111056368da.java)
> at org.apache.tapestry.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:56)
> at $RequestExceptionHandler_111056368b1.handleRequestException($RequestExceptionHandler_111056368b1.java)
> at org.apache.tapestry.services.TapestryModule$6.service(TapestryModule.java:523)
> at $RequestHandler_111056368ee.service($RequestHandler_111056368ee.java)
> at org.apache.tapestry.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:56)
> at $RequestHandler_111056368ee.service($RequestHandler_111056368ee.java)
> at org.apache.tapestry.internal.services.LocalizationFilter.service(LocalizationFilter.java:43)
> at $RequestHandler_111056368ee.service($RequestHandler_111056368ee.java)
> at org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:91)
> at org.apache.tapestry.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:82)
> at org.apache.tapestry.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:77)
> at org.apache.tapestry.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:104)
> at $RequestHandler_111056368ee.service($RequestHandler_111056368ee.java)
> at $RequestHandler_111056368e8.service($RequestHandler_111056368e8.java)
> at org.apache.tapestry.services.TapestryModule$3.service(TapestryModule.java:402)
> at $HttpServletRequestHandler_111056368e7.service($HttpServletRequestHandler_111056368e7.java)
> at org.apache.tapestry.TapestryFilter.doFilter(TapestryFilter.java:114)
> at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065)
> at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)
> at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
> at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
> at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:690)
> at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:401)
> at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191)
> at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
> at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
> at org.mortbay.jetty.Server.handle(Server.java:285)
> at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
> at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:751)
> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500)
> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
> at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
> at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
> The logs are no more informative.
--
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: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org