ClassCastException in the DefaultExceptionsHandler when handling JSP rendering
exceptions on a direct call to a JSP
-------------------------------------------------------------------------------------------------------------------
Key: BEEHIVE-1130
URL: http://issues.apache.org/jira/browse/BEEHIVE-1130
Project: Beehive
Type: Bug
Components: NetUI
Versions: 1.0.1, v.next
Reporter: Carlin Rogers
When a request is made directly to a JSP (not via a page flow) and the
rendering of the JSP throws an exception, the PageFlowPageFilter will catch the
exception and try to use the DefaultExceptionsHandler. However, the
DefaultExceptionsHandler expects the request to be a PageFlowRequestWrapper and
calls PageFlowRequestWrapper.get(). In this scenario, the request is not a
PageFlowRequestWrapper so the get() method throws either an AssertException
(when checking for the PageFlowRequestWrapper) or a ClassCastException when
running without asserts.
Here's an example stack trace...
java.lang.ClassCastException: org.apache.coyote.tomcat5.CoyoteRequestFacade
at
org.apache.beehive.netui.pageflow.internal.PageFlowRequestWrapper.get(PageFlowRequestWrapper.java:60)
at
org.apache.beehive.netui.pageflow.internal.DefaultExceptionsHandler.handleException(DefaultExceptionsHandler.java:110)
at
org.apache.beehive.netui.pageflow.FlowController.handleException(FlowController.java:272)
at
org.apache.beehive.netui.pageflow.PageFlowPageFilter.handleException(PageFlowPageFilter.java:440)
at
org.apache.beehive.netui.pageflow.PageFlowPageFilter.runPage(PageFlowPageFilter.java:354)
at
org.apache.beehive.netui.pageflow.PageFlowPageFilter.doFilter(PageFlowPageFilter.java:251)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira