[richfaces-issues] [JBoss JIRA] (RF-12108) Components second tab changes are not rendered after performing some ajax action if attribute ajaxRendered="true" inside <rich:message /> located on first tab
Juraj Huska (JIRA)
jira-events at lists.jboss.org
Wed May 30 07:59:18 EDT 2012
[ https://issues.jboss.org/browse/RF-12108?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12697150#comment-12697150 ]
Juraj Huska edited comment on RF-12108 at 5/30/12 7:58 AM:
-----------------------------------------------------------
The broken Ajax request handling is IMHO caused by wrong partial-response. The partial response in corrupted example ({{rich:message}} attribute {{ajaxRendered}} is set to true) for the tab which *does not* contain {{rich:message}} looks like:
{code:xml}
<?xml version='1.0' encoding='UTF-8'?>
<partial-response>
<changes>
<update id="j_idt6:j_idt8">
<![CDATA[<span class="rf-msg " id="j_idt6:j_idt8"></span>]]></update><update id="j_idt6:out"><![CDATA[<span id="j_idt6:out">sdasd</span>]]>
</update>
<update id="javax.faces.ViewState"><![CDATA[9154017519471903164:-919038198015314945]]>
</update>
<extension id="org.richfaces.extension"><complete>new RichFaces.ui.Message("j_idt6:j_idt8",{"forComponentId":"j_idt6:name","showSummary":false,"showDetail":true} );</complete> </extension>
</changes>
</partial-response>
{code}
Note the {{<![CDATA[<span class="rf-msg}} which is the {{rich:message}} element.
When it is manually clicked on the tab with that message and then again on the tab with previously broken functionality then the Ajax response is correct, and looks like:
{code:xml}
<?xml version='1.0' encoding='UTF-8'?>
<partial-response>
<changes><update id="j_idt6:out"><![CDATA[<span id="j_idt6:out">abcd</span>]]>
</update><update id="javax.faces.ViewState"><![CDATA[2345727537481949594:-2656717515484844967]]>
</update>
</changes>
</partial-response>
{code}
was (Author: jhuska):
The broken Ajax request handling is IMHO caused by wrong partial-response. The partial response in corrupted example ({{rich:message}} attribute {{ajaxRendered}} is set to true) for the tab which *does not* contain {{rich:message}} looks like:
{code:xml}
<?xml version='1.0' encoding='UTF-8'?>
<partial-response>
<changes>
<update id="j_idt6:j_idt8">
<![CDATA[<span class="rf-msg " id="j_idt6:j_idt8"></span>]]></update><update id="j_idt6:out"><![CDATA[<span id="j_idt6:out">sdasd</span>]]>
</update>
<update id="javax.faces.ViewState"><![CDATA[9154017519471903164:-919038198015314945]]>
</update>
<extension id="org.richfaces.extension"><complete>new RichFaces.ui.Message("j_idt6:j_idt8",{"forComponentId":"j_idt6:name","showSummary":false,"showDetail":true} );</complete> </extension>
</changes>
</partial-response>
{code}
Note the {{<![CDATA[<span class="rf-msg}} which is the {{rich:message}} element.
When it is manually clicked on the tab with that message and then again on the tab with previously broken functionality then the Ajax response is correct, and looks like:
{code:xml}
<?xml version='1.0' encoding='UTF-8'?>
<partial-response>
<changes><update id="j_idt6:out"><![CDATA[<span id="j_idt6:out">ss</span>]]>
</update><update id="javax.faces.ViewState"><![CDATA[2345727537481949594:-2656717515484844967]]>
</update>
</changes>
</partial-response>
{code}
> Components second tab changes are not rendered after performing some ajax action if attribute ajaxRendered="true" inside <rich:message /> located on first tab
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: RF-12108
> URL: https://issues.jboss.org/browse/RF-12108
> Project: RichFaces
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 4.2.0.Final
> Environment: JDK1.6,
> JBoss 6.0.Final,
> richfaces 4.1.0.Final/4.2.0.Final
> seam 3.1
> IE 9
> Reporter: Artur Mioduszewski
> Assignee: Juraj Huska
>
> In case getting 2 tabs (in my case it is primefaces tabs):
> {code:title=RENDERING ON SECOND TAB NOT WORKS (after clicking link)}
> First tab:
> <h:selectOneMenu id="nSurfacePercentageOfWholePlayback" value="#{newSurface.percentageOfWholePlayback}">
> <f:selectItems value="#{staticPercentagesItems}"/>
> </h:selectOneMenu>
> <rich:message for="nSurfacePercentageOfWholePlayback" ajaxRendered="true"/>
> Second tab (some code with ajax)
> Ex.
> <a4j:commandLink styleClass="no-decor" execute="@this" action="#{componentManager.deactivateVertically}">
> <h:graphicImage value="/images/icons/delete.gif" alt="Deactivate Vertically"/>
> <a4j:param value="#{dayIndex.index + 1}" assignTo="#{componentManager.verticalDeactivationIndex}"/>
> </a4j:commandLink>
> {code}
> {code:title=RENDERING ON SECOND TAB CORRECTLY WORKS (after clicking link)}
> First tab:
> <h:selectOneMenu id="nSurfacePercentageOfWholePlayback" value="#{newSurface.percentageOfWholePlayback}">
> <f:selectItems value="#{staticPercentagesItems}"/>
> </h:selectOneMenu>
> <rich:message for="nSurfacePercentageOfWholePlayback" ajaxRendered="false"/>
> Second tab (some code with ajax)
> Ex.
> <a4j:commandLink styleClass="no-decor" execute="@this" action="#{componentManager.deactivateVertically}">
> <h:graphicImage value="/images/icons/delete.gif" alt="Deactivate Vertically"/>
> <a4j:param value="#{dayIndex.index + 1}" assignTo="#{componentManager.verticalDeactivationIndex}"/>
> </a4j:commandLink>
> {code}
> When I change tabs order, problem does not exist.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the richfaces-issues
mailing list