ICEfaces
  1. ICEfaces
  2. ICE-10720

Toggling "rendered" doesn't work properly with multiple ace:submitMonitor components

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 4.0
    • Fix Version/s: 4.1
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      Any, tested in trunk showcase
    • Assignee Priority:
      P2
    • Workaround Exists:
      Yes
    • Workaround Description:
      Hide
      Refreshing the page (with the checkbox/rendered states maintained) updates the monitors properly. So changing List Monitor to rendered="false" and then refreshing will properly show the Panel Monitor on further submissions.
      So maybe just something not being cleaned up on un-render.
      Show
      Refreshing the page (with the checkbox/rendered states maintained) updates the monitors properly. So changing List Monitor to rendered="false" and then refreshing will properly show the Panel Monitor on further submissions. So maybe just something not being cleaned up on un-render.

      Description

      This problem manifests when using multiple ace:submitMonitor components on a single page with "rendered" attributes.

      When these attributes are toggled (in this case via checkboxes) the submitMonitor doesn't "bubble up" to the next available monitor properly.

      For example:
      Page level monitor ('for' undefined)
      Panel level monitor ('for' equal to panel ID)
      List (inside panel) level monitor ('for' equal to list ID)

      If we toggle "List Monitor" to rendered="false" the expected behaviour is the Panel Monitor should process any further submissions. That doesn't happen, and no monitor is displayed.
      Similarly toggling the Panel Monitor to rendered="false" means the submission should "bubble up" to the Page Monitor, which again doesn't happen.

      Toggling back to rendered="true" seems to work though.

        Issue Links

          Activity

          Hide
          Ken Fyten added a comment -

          This issue can be reproduced using the Showcase->ace:submitMonitor->Nested demo.

          If you uncheck any of the submitMonitor levels in the demo, the monitors no longer function properly.

          Perhaps the ace:submitMonitor is not implementing the onBeforeUpdate callback to clean itself up properly?

          Show
          Ken Fyten added a comment - This issue can be reproduced using the Showcase->ace:submitMonitor->Nested demo. If you uncheck any of the submitMonitor levels in the demo, the monitors no longer function properly. Perhaps the ace:submitMonitor is not implementing the onBeforeUpdate callback to clean itself up properly?
          Hide
          Mircea Toma added a comment -

          Cleanup monitor mapping when monitors are removed by updates.

          Show
          Mircea Toma added a comment - Cleanup monitor mapping when monitors are removed by updates.

            People

            • Assignee:
              Mircea Toma
              Reporter:
              Carlo Guglielmin
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: