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

Eduardo Breijo commented on MYFACES-4125:
-----------------------------------------

I tried your same suggestion a couple of days ago, and it indeed works as 
mojarra and as myfaces 2.0 since that's what it is causing the issue reported 
here. As I mentioned, that method was empty on myfaces 2.0. I'm not sure if 
that is the best solution, not sure if that is used for some other purposes. It 
would be nice to have some other inputs. If commenting out what it is inside 
flush() is the best, I can commit that.

> Response committed too early due to flush from StateWriter
> ----------------------------------------------------------
>
>                 Key: MYFACES-4125
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4125
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.2.12
>            Reporter: Eduardo Breijo
>         Attachments: server.log, StateWriter.war
>
>
> We've found a problem where it seems that MyFaces is flushing output too 
> early in the RENDER_RESPONSE PHASE. As a result the response is committed 
> before we have a chance to handle an error in that phase. 
> This is because the renderView method from FaceletViewDeclarationLanguage 
> calls writer.endDocument() which ends up calling the flush() method from 
> StateWriter. This commit behavior is different between 2.0 and 2.2.  It looks 
> like a flush() was empty on 2.0, and now a call was added, which causes the 
> issue we are seeing.
> Here's a sample app:
> 1) Drive a request: localhost:9080/StateWriter/index.xhtml
> 2) You should be able to see in the logs that response was committed, so 
> redirect to error.xhtml cannot be performed.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to