-
1. Re: a4j re render breaks t:commandSortHeader
ilya_shaikovsky Sep 1, 2008 7:47 AM (in response to roku)your button is outside the form. why you expect that it should work?
-
2. Re: a4j re render breaks t:commandSortHeader
roku Sep 1, 2008 7:58 AM (in response to roku)"ilya_shaikovsky" wrote:
your button is outside the form. why you expect that it should work?
No, it is inside a form. Sorry for that. The problem is not that no re rendering happens. It happens, but breaks sorting of the datatable header. -
3. Re: a4j re render breaks t:commandSortHeader
ilya_shaikovsky Sep 1, 2008 8:36 AM (in response to roku)sorry but could you update your version to latest 3.2.2 CR2..?
-
4. Re: a4j re render breaks t:commandSortHeader
roku Sep 1, 2008 8:44 AM (in response to roku)"ilya_shaikovsky" wrote:
sorry but could you update your version to latest 3.2.2 CR2..?
That was the first thing I tried, but no changes.
To make things clearer, here is the code to isolate the problem.
<html
xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:t="http://myfaces.apache.org/tomahawk"
xmlns:p="http://www.neo-partners.com/psa/facelets"
xmlns:rich="http://richfaces.org/rich"
xmlns:a4j="http://richfaces.org/a4j"
>
<a4j:form>
<a4j:commandButton reRender="data" value="Refresh"/>
</a4j:form>
<t:div id="data">
<a4j:form>
<t:dataTable id="persons" value="#{personBean.testPersons}"
var="person" styleClass="datatable"
columnClasses=",,,,,currencyCell,,,,,currencyCell,currencyCell"
headerClass="datatable-header"
rowClasses="datatable-row-even, datatable-row-odd"
sortColumn="#{personBean.sortPropertyName}"
sortAscending="#{personBean.sortAscending}"
preserveSort="false" renderedIfEmpty="false"
forceIdIndexFormula="#{document.uid}">
<h:column>
<f:facet name="header">
<t:commandSortHeader columnName="name" arrow="true"
immediate="false">
<h:outputText value="FName" />
</t:commandSortHeader>
</f:facet>
<h:outputText value="#{person.firstName}" />
</h:column>
</t:dataTable>
</a4j:form>
</t:div>
Unfortunately I have lots of pages using t:commandSortHeader. The problem is 100% reproducable. -
5. Re: a4j re render breaks t:commandSortHeader
roku Sep 1, 2008 8:54 AM (in response to roku)FYI: After a page reload, the sorting works again.
-
6. Re: a4j re render breaks t:commandSortHeader
roku Sep 1, 2008 9:09 AM (in response to roku)I have changed the isolation code a bit. I have now 3 a4j:button s reRendering different parent levels of the datatable. Only the button, which rerenders the datatable direct, keeps the commandSortHeader working.
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:t="http://myfaces.apache.org/tomahawk" xmlns:p="http://www.neo-partners.com/psa/facelets" xmlns:rich="http://richfaces.org/rich" xmlns:a4j="http://richfaces.org/a4j" > <body> <a4j:form> <!-- Breaks commandSortHeader --> <a4j:commandButton reRender="data" value="Refresh Data"/> <!-- Breaks commandSortHeader --> <a4j:commandButton reRender="dataForm" value="Refresh Data Form"/> <!-- DOES NOT BREAK commandSortHeader --> <a4j:commandButton reRender="persons" value="Refresh Persons"/> </a4j:form> <t:div id="data"> <a4j:form id="dataForm"> <t:dataTable id="persons" value="#{personBean.testPersons}" var="person" sortColumn="#{personBean.sortPropertyName}" sortAscending="#{personBean.sortAscending}" preserveSort="false" renderedIfEmpty="false"> <t:column> <f:facet name="header"> <t:commandSortHeader columnName="name" arrow="true" immediate="false"> <t:outputText value="FName" /> </t:commandSortHeader> </f:facet> <t:outputText value="#{person.firstName}" /> </t:column> </t:dataTable> </a4j:form> </t:div> </body> </html>
-
7. Re: a4j re render breaks t:commandSortHeader
roku Sep 1, 2008 9:48 AM (in response to roku)FYI: I get the same java script error for all h:commandLink s inside the persons form. Bute here I can work around it by using a4j:commandLink instead of h:commandLink. In case of the t:commandSortHeader, I have no possibility to influence the link rendering.
-
8. Re: a4j re render breaks t:commandSortHeader
ilya_shaikovsky Sep 1, 2008 10:02 AM (in response to roku)So seems you need update whole dataTable while using tomahawk in order all nesessary scripts to be included.
B.t.w. you could use Rich Faces dataTable and its sorting capabilities. -
9. Re: a4j re render breaks t:commandSortHeader
roku Sep 1, 2008 10:05 AM (in response to roku)"ilya_shaikovsky" wrote:
So seems you need update whole dataTable while using tomahawk in order all nesessary scripts to be included.
B.t.w. you could use Rich Faces dataTable and its sorting capabilities.
I thought when re rerendering the parent container of the t:datatable everything down under is re rendered, isn't it?
Unfortunately atm I can not use rich:datatable for some let's say political reason.
So, this is not a bug of richfaces? Or at least a missing feature?