[richfaces-issues] [JBoss JIRA] (RF-13288) sortOrder gets re-set when resizing a column of extendedDataTable

Jonáš Trantina (JIRA) jira-events at lists.jboss.org
Thu Oct 24 08:44:02 EDT 2013


     [ https://issues.jboss.org/browse/RF-13288?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonáš Trantina updated RF-13288:
--------------------------------

    Description: 
I have the following extendedDataTable:
{noformat}
 <rich:extendedDataTable value="#{sandboxHandler.workItems}"
                                    keepSaved="true" var="workitem" id="table">
                <rich:column sortBy="#{workitem}"
                             sortOrder="#{sandboxHandler.sortingBean.sortsOrders['entryPD']}">
                    <f:facet name="header">
                        <h:outputText value="bla" />
                        <uwl:simpleSortIcons sortingBean="#{sandboxHandler.sortingBean}"
                                             sortBy="entryPD" render="table" />
                    </f:facet>
                    <h:outputFormat value="{0, date, dd.MM.yyyy - HH:mm}">
                        <f:param value="#{workitem}" />
                    </h:outputFormat>
                </rich:column>
            </rich:extendedDataTable>
{noformat}

The issue is the sorting stops working after resizing a column. It gets stuck at ASC or DESC. This is caused by ELResolver, that is setting sandboxHandler.sortingBean.sortsOrders['entryPD'] back to the old value right after the SortingBean has done its job and set the right sort order.
Note that before resizing the column everything works fine and nobody (except SortingBean) touches the sortOrders map.

Please see the attached reproducer app, that is debug-friendly and shows the behaviour.

  was:
I have the following extendedDataTable:
{noformat}
 <rich:extendedDataTable value="#{sandboxHandler.workItems}"
                                    keepSaved="true" var="workitem" id="table">
                <rich:column sortBy="#{workitem}"
                             sortOrder="#{sandboxHandler.sortingBean.sortsOrders['entryPD']}">
                    <f:facet name="header">
                        <h:outputText value="bla" />
                        <uwl:simpleSortIcons sortingBean="#{sandboxHandler.sortingBean}"
                                             sortBy="entryPD" render="table" />
                    </f:facet>
                    <h:outputFormat value="{0, date, dd.MM.yyyy - HH:mm}">
                        <f:param value="#{workitem}" />
                    </h:outputFormat>
                </rich:column>
            </rich:extendedDataTable>
{noformat}

The issue is the sorting stops working after resizing a column. It gets stuck at ASC or DESC. This is caused by ELResolver, that is setting sandboxHandler.sortingBean.sortsOrders['entryPD'] back to the old value right after the SortingBean has done its job and set the right sort order.
Note that before resizing the column everything works fine and nobody (except SortingBean) touches the sortOrders map.

Please see the attached reproducer app, that is debug-friendly to show the behaviour.


    
> sortOrder gets re-set when resizing a column of extendedDataTable
> -----------------------------------------------------------------
>
>                 Key: RF-13288
>                 URL: https://issues.jboss.org/browse/RF-13288
>             Project: RichFaces
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: component-tables
>    Affects Versions: 4.3.2
>            Reporter: Jonáš Trantina
>         Attachments: reproducer.tar.gz
>
>
> I have the following extendedDataTable:
> {noformat}
>  <rich:extendedDataTable value="#{sandboxHandler.workItems}"
>                                     keepSaved="true" var="workitem" id="table">
>                 <rich:column sortBy="#{workitem}"
>                              sortOrder="#{sandboxHandler.sortingBean.sortsOrders['entryPD']}">
>                     <f:facet name="header">
>                         <h:outputText value="bla" />
>                         <uwl:simpleSortIcons sortingBean="#{sandboxHandler.sortingBean}"
>                                              sortBy="entryPD" render="table" />
>                     </f:facet>
>                     <h:outputFormat value="{0, date, dd.MM.yyyy - HH:mm}">
>                         <f:param value="#{workitem}" />
>                     </h:outputFormat>
>                 </rich:column>
>             </rich:extendedDataTable>
> {noformat}
> The issue is the sorting stops working after resizing a column. It gets stuck at ASC or DESC. This is caused by ELResolver, that is setting sandboxHandler.sortingBean.sortsOrders['entryPD'] back to the old value right after the SortingBean has done its job and set the right sort order.
> Note that before resizing the column everything works fine and nobody (except SortingBean) touches the sortOrders map.
> Please see the attached reproducer app, that is debug-friendly and shows the behaviour.

--
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



More information about the richfaces-issues mailing list