ICEfaces
  1. ICEfaces
  2. ICE-7617

ace:dataTable - filtering table contents with alwaysExecuteContents="true" causes data to be out of sync

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.0.RC2
    • Fix Version/s: 3.0
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      ICEfaces 3.0 RC1A Build 7
    • Assignee Priority:
      P2
    • Workaround Exists:
      Yes
    • Workaround Description:
      Set alwaysExecuteContents="false". Using nested <f:ajax render="@this"/> can save the data on change.

      Description

      Filtering on a dataTable when alwaysExecuteContents="true" can cause data to become mixed up. This only effects a table that uses an inputText field in one of the columns.

        Activity

        Hide
        Arran Mccullough added a comment -

        Attached test case to reproduce issue. Steps to see issue:

        • Note that the third column has an input field with text that states what row it belongs to.
        • In the second column filter field enter "aa" and click the enter key.
        • In the first column filter field enter in "10" and click the enter key.
        • Go back to the second filter field and clear it out, hit enter.
        • Now data is shown that includes a "10".
        • Clear out the first columns filter field and hit enter.
        • The third column is now messed up. "Row Four" is shown where "Row Three" should be. "Row Three" is now here to be found.
        Show
        Arran Mccullough added a comment - Attached test case to reproduce issue. Steps to see issue: Note that the third column has an input field with text that states what row it belongs to. In the second column filter field enter "aa" and click the enter key. In the first column filter field enter in "10" and click the enter key. Go back to the second filter field and clear it out, hit enter. Now data is shown that includes a "10". Clear out the first columns filter field and hit enter. The third column is now messed up. "Row Four" is shown where "Row Three" should be. "Row Three" is now here to be found.
        Hide
        Nils Lundquist added a comment -

        Revision #27089
        Committed by nils.lundquist
        ICE-7617 - Removed now unused DataTable clearDataModel flag.

        • Iterate wasn't using filtered data model under some circumstances
        • Filtered data cache was also cleared more often than needed
        Show
        Nils Lundquist added a comment - Revision #27089 Committed by nils.lundquist ICE-7617 - Removed now unused DataTable clearDataModel flag. Iterate wasn't using filtered data model under some circumstances Filtered data cache was also cleared more often than needed

          People

          • Assignee:
            Nils Lundquist
            Reporter:
            Arran Mccullough
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: