When using PageTester, an exception in the page is hidden by an exception rendering the exception report page (pt. 2)

Details

Description

TAP5-621 is still an issue, I now get this when using the PageTester. So the actual problem is still being hidden. I commented the other bug, but couldn't re-open it and it's not been re-opened by anyone reading the dev list so I'm raising another bug. I needed to implement getHeader() and getHeaderNames() to get my tests errors to appear. Although, it was still awkward because I was looking at the raw HTML of the T5 ExceptionReport in the debugger - could be easier.

org.apache.tapestry5.internal.services.RenderQueueException: Render queue error in BeginRender[core/ExceptionReport:renderobject]: Request: method getHeaderNames() not yet implemented by TestableRequestImpl. [at classpath:org/apache/tapestry5/corelib/pages/ExceptionReport.tml, line 24]
at org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:86)
at org.apache.tapestry5.internal.services.PageRenderQueueImpl.render(PageRenderQueueImpl.java:121)
at $PageRenderQueue_1208c28466c.render($PageRenderQueue_1208c28466c.java)
at $PageRenderQueue_1208c28466b.render($PageRenderQueue_1208c28466b.java)
at org.apache.tapestry5.internal.services.MarkupRendererTerminator.renderMarkup(MarkupRendererTerminator.java:37)
at org.apache.tapestry5.services.TapestryModule$27.renderMarkup(TapestryModule.java:1752)
at $MarkupRenderer_1208c284670.renderMarkup($MarkupRenderer_1208c284670.java)
at org.apache.tapestry5.services.TapestryModule$26.renderMarkup(TapestryModule.java:1733)
at $MarkupRenderer_1208c284670.renderMarkup($MarkupRenderer_1208c284670.java)
at org.apache.tapestry5.services.TapestryModule$25.renderMarkup(TapestryModule.java:1715)
at $MarkupRenderer_1208c284670.renderMarkup($MarkupRenderer_1208c284670.java)
at org.apache.tapestry5.services.TapestryModule$24.renderMarkup(TapestryModule.java:1701)
at $MarkupRenderer_1208c284670.renderMarkup($MarkupRenderer_1208c284670.java)
at org.apache.tapestry5.services.TapestryModule$23.renderMarkup(TapestryModule.java:1682)
at $MarkupRenderer_1208c284670.renderMarkup($MarkupRenderer_1208c284670.java)
at org.apache.tapestry5.services.TapestryModule$22.renderMarkup(TapestryModule.java:1663)
at $MarkupRenderer_1208c284670.renderMarkup($MarkupRenderer_1208c284670.java)
at org.apache.tapestry5.internal.test.CaptureRenderedDocument.renderMarkup(CaptureRenderedDocument.java:39)
at $MarkupRenderer_1208c284670.renderMarkup($MarkupRenderer_1208c284670.java)
at $MarkupRenderer_1208c28466a.renderMarkup($MarkupRenderer_1208c28466a.java)
at org.apache.tapestry5.internal.services.PageMarkupRendererImpl.renderPageMarkup(PageMarkupRendererImpl.java:64)
at $PageMarkupRenderer_1208c284666.renderPageMarkup($PageMarkupRenderer_1208c284666.java)
at org.apache.tapestry5.internal.services.PageResponseRendererImpl.renderPageResponse(PageResponseRendererImpl.java:61)
at $PageResponseRenderer_1208c28460b.renderPageResponse($PageResponseRenderer_1208c28460b.java)
at org.apache.tapestry5.internal.services.DefaultRequestExceptionHandler.handleRequestException(DefaultRequestExceptionHandler.java:77)
at $RequestExceptionHandler_1208c2845f5.handleRequestException($RequestExceptionHandler_1208c2845f5.java)
at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:42)
at $RequestHandler_1208c2845f8.service($RequestHandler_1208c2845f8.java)
at org.apache.tapestry5.services.TapestryModule$4.service(TapestryModule.java:782)
at $RequestHandler_1208c2845f8.service($RequestHandler_1208c2845f8.java)
at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:771)
at $RequestHandler_1208c2845f8.service($RequestHandler_1208c2845f8.java)
at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:85)
at $RequestHandler_1208c2845f8.service($RequestHandler_1208c2845f8.java)
at com.proquest.apps.corelib.AppCoreLibModule$4.service(AppCoreLibModule.java:209)
at $RequestFilter_1208c2845ef.service($RequestFilter_1208c2845ef.java)
at $RequestHandler_1208c2845f8.service($RequestHandler_1208c2845f8.java)
at org.apache.tapestry5.internal.test.EndOfRequestCleanupFilter.service(EndOfRequestCleanupFilter.java:42)
at $RequestHandler_1208c2845f8.service($RequestHandler_1208c2845f8.java)
at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:90)
at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:81)
at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:103)
at $RequestHandler_1208c2845f8.service($RequestHandler_1208c2845f8.java)
at $RequestHandler_1208c2845e3.service($RequestHandler_1208c2845e3.java)
at org.apache.tapestry5.test.PageTester.renderPage(PageTester.java:173)
at com.proquest.apps.onesearch.pages.mystuff.CreateProfileTest.testRender(CreateProfileTest.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
at org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98)
at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79)
at org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87)
at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
at org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88)
at org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
at org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
at org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
at org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:45)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException: Request: method getHeaderNames() not yet implemented by TestableRequestImpl. [at classpath:org/apache/tapestry5/corelib/pages/ExceptionReport.tml, line 24]
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:948)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$400(ComponentPageElementImpl.java:49)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.callback(ComponentPageElementImpl.java:159)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$BeginRenderPhase.render(ComponentPageElementImpl.java:211)
at org.apache.tapestry5.internal.services.RenderQueueImpl.run(RenderQueueImpl.java:74)
... 68 more
Caused by: java.lang.RuntimeException: Request: method getHeaderNames() not yet implemented by TestableRequestImpl.
at org.apache.tapestry5.internal.test.TestableRequestImpl.nyi(TestableRequestImpl.java:54)
at org.apache.tapestry5.internal.test.TestableRequestImpl.getHeaderNames(TestableRequestImpl.java:127)
at $TestableRequest_1208c2845cf.getHeaderNames($TestableRequest_1208c2845cf.java)
at org.apache.tapestry5.internal.renderers.RequestRenderer.headers(RequestRenderer.java:173)
at org.apache.tapestry5.internal.renderers.RequestRenderer.render(RequestRenderer.java:75)
at org.apache.tapestry5.internal.renderers.RequestRenderer.render(RequestRenderer.java:26)
at $ObjectRenderer_1208c284673.render($ObjectRenderer_1208c284673.java)
at $ObjectRenderer_1208c28463b.render($ObjectRenderer_1208c28463b.java)
at org.apache.tapestry5.corelib.components.RenderObject.beginRender(RenderObject.java:40)
at org.apache.tapestry5.corelib.components.RenderObject.beginRender(RenderObject.java)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$BeginRenderPhase.invokeComponent(ComponentPageElementImpl.java:206)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.run(ComponentPageElementImpl.java:164)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:933)
... 72 more