Ok, this is driving me absolutely crazy: I have a drop-down menu allowing a user to select from a list of reports, the results of which are then displayed in a table on the same page. The table has paging (request scope, through sub-selects) and sorting. I got all this to work for one of the reports and am now trying to get it so that when a user selects a different report the data structures backing the table are dynamically changed. For this, I need a value-change event triggered by the UISelectOne component to take place after Update Model Phase (so that I can reset the DataModel after it has been retrieved from previous request). Someone suggested a way to do this using a hidden commandLink as follows: http://www.nabble.com/Can-UISelectOne-Trigger-an-Action-Event--tf1981993.html#a5439491.
However, after I did this, all of a sudden sorting stopped working. I realized that the action event that used to fire when a user clicked on a column header (to sort the data) is no longer firing (incidentally, this is the same action event that I am now triggering when a user selects a different report from a drop-down menu). Searching through other posts, I found out that sometimes the reason for this is that the component that is suppose to queue the action event may not exist (rendered=false) during the entire time from the first request renderResponse phase to the next request's invokeApplication phase (see http://www.nabble.com/actionListener-not-invoked-tf1317007.html#a3544909). However, since the actionListener attribute is set on the t:commandSortHeader, I am not sure how exactly to utilize t:savestate. Any suggestions would be greatly appreciated. <t:dataTable id="queueDetails" styleClass="recordSetTable" headerClass="resultSetTableHeader" rowClasses="cellDataAltRow,cellDataFirstRow" var="row" preserveDataModel="true" binding="#{workbenchForm.data}" value="#{workbenchForm.dataModel.value}" rows="#{workbenchForm.dataModel.rows}" sortColumn="#{workbenchForm.dataModel.sortColumn}" sortAscending="#{workbenchForm.dataModel.sortAscending}" preserveSort="true" > <t:columns id="columns" value="#{workbenchForm.columns}" var="column" > <f:facet name="header"> <t:commandSortHeader columnName="#{column.label}" immediate="false" arrow="true" actionListener="#{workbenchForm.actionListener}" styleClass="cellDataHeader"> <h:outputText value="#{column.label}" /> </t:commandSortHeader> </f:facet> <h:outputText value="#{workbenchForm.columnValue}" /> </t:columns> </t:dataTable> -- View this message in context: http://www.nabble.com/Pageable-%28Through-Sub-selects%29%2C-Sortable%2C-Dynamic-Cols-dataTable-Issuue-tf1999409.html#a5489187 Sent from the MyFaces - Users forum at Nabble.com.

