[
https://issues.jboss.org/browse/RF-12865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12782195#comment-12782195
]
Brian Leathem commented on RF-12865:
------------------------------------
As reported in the user forum, this bug is only present when RichFaces is used
in combination with OmniFaces. See the following Omnifaces bug report for a
clear explanation of the root cause from [~bauke]:
https://code.google.com/p/omnifaces/issues/detail?id=191
{quote}
This is a design bug in RichFaces. It's not utilizing standard JSF API
facilities in its partial response writer. For some unobvious reason they
stopped using PartialResponseWriter#endDocument() and added a custom
finallyEndDocument() method which is not part of standard JSF API. This is only
called by RichFaces own ExtendedPartialViewContextImpl. They also incorrectly
assume that the RichFaces partial response writer would be the only response
writer ever which is in use in the webapp. They do not take into account that
partial response writers can be wrapped by another implementations and are
supposed to delegate to the wrapped instance everytime. They do an instanceof
check on the outermost wrapped instance only and if it's not an instance of
their own response writer implementation (but e.g. the one of OmniFaces or even
PrimeFaces), then they completely ignore it. They even don't even try to call
the standard endDocument() method on it. In short, they are breaking the st!
andard API.
See also source code for evidence:
http://grepcode.com/file/repo1.maven.org/maven2/org.richfaces.core/richfaces-core-impl/4.3.1.CR1/org/richfaces/context/ExtendedPartialViewContextImpl.java#206
That is works with Mojarra is because it coincidentally loads the OmniFaces
partial view context *before* the RichFaces one, so RichFaces always ends up
getting its own response writer.
I'm not sure what to do here. I could expand our Hacks class with another one
for RichFaces. It's already so full of ExtendedPartialViewContextImpl specific
hacks.
{quote}
and
{quote}
I recommend to get rid of `finallyEndDocument()` and perform the job in
`endDocument()`. I also recommend to let your partial view context impl extend
from javax.faces.context.PartialViewContextWrapper to keep RichFaces friendly
towards other JSF libraries which also offer a PVC wrapper. This should also
eliminate verbose/strange ContextMode.DIRECT/WRAPPED boilerplate. As to
"encoding issues" which the class' javadoc is talking about, I'm not sure what
exactly you mean there, but I believe that it has the same grounds as this
PrimeFaces problem: http://stackoverflow.com/a/9839362/157882 If this is true,
just don't do that and clearly document to the enduser that it's his
responsibility to explicitly configure the webapp and/or the server to use
UTF-8 as request parameter/body encoding, which is at most a matter of a
servlet fitler with an oneliner. This way you do not need to introduce wrapper
modes in your partial view context (at least, I did not see a clear reason why
you!
are doing that, other than the comment on top of the class).
{quote}
> A4j:commandButton fail to render/update other components with MyFaces
> ---------------------------------------------------------------------
>
> Key: RF-12865
> URL: https://issues.jboss.org/browse/RF-12865
> Project: RichFaces
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: third-party
> Affects Versions: 4.3.1
> Environment: weblogic 10.3.4, Myfaces 2.1.10, Richfaces 4.3.1,
> OmniFaces1.3
> Reporter: blam lam
> Labels: waiting_on_user
>
> After submit from a a4j:commandButton, it fail to re-render / update other
> component on the page.
> This problem only appear in MyFaces. It does not happens in Mojarra.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
richfaces-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/richfaces-issues