myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eduardo Breijo (JIRA)" <>
Subject [jira] [Commented] (MYFACES-4125) Response committed too early due to flush from StateWriter
Date Thu, 20 Jul 2017 15:22:00 GMT


Eduardo Breijo commented on MYFACES-4125:

In mojarra 2.2 we see the same behavior you are seeing, page redirecting too many times, the
same behavior as myfaces 2.0. But that's not the issue here, the issue is that the response
has been committed too early due to a change in myfaces 2.2, that added a flush call inside
the flush() method of StateWriter class, which results in flushing the underlying Writer or

> Response committed too early due to flush from StateWriter
> ----------------------------------------------------------
>                 Key: MYFACES-4125
>                 URL:
>             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

View raw message