[ 
https://issues.apache.org/jira/browse/MYFACES-2142?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12704714#action_12704714
 ] 

Curtiss Howard commented on MYFACES-2142:
-----------------------------------------

Leonardo, I found the text in the spec that talks about this.  Section 2.2.6, 
last bullet:

"For partial requests, where partial view rendering is required, there must be 
no content written outside of the view
(outside f:view). Response writing must be disabled. Response writing must be 
enabled again at the start of
encodeBegin."

And I think it's better to extend HttpServletResponseWrapper because otherwise 
you have to implement all the methods in HttpServletResponse and back them with 
an existing writer... effectively duplicating the functionality of 
HttpServletResponseWrapper.

> ClassCastException in JspViewHandlerImpl: ResponseSwitch != 
> HttpServletResponse
> -------------------------------------------------------------------------------
>
>                 Key: MYFACES-2142
>                 URL: https://issues.apache.org/jira/browse/MYFACES-2142
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: JSR-314
>            Reporter: Jan-Kees van Andel
>         Attachments: MYFACES-2142.patch
>
>
> While running the latest myfaces2 source code with a test JSP page, I've 
> encountered the following error.
> java.lang.ClassCastException: 
> org.apache.myfaces.context.servlet.ResponseSwitch cannot be cast to 
> javax.servlet.http.HttpServletResponse
>       at 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:487)
>       at 
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:343)
>       at 
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:45)
>       at 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:167)
>       at 
> javax.faces.webapp.FacesServlet._handleStandardRequest(FacesServlet.java:428)
>       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:182)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> etc......
> As far as I can see, this is a bug, since there is an explicit cast to 
> HttpServletResponse and the given parameter is of type ResponseSwitch, which 
> is not a HttpServletResponse.
> It looks like a recent change...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to