ICEfaces
  1. ICEfaces
  2. ICE-10236

ace:listControl in ui:repeat failures

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.3.0.GA_P02, 4.0
    • Fix Version/s: EE-4.0.0.GA, EE-3.3.0.GA_P03, 4.1
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      ICEfaces4 trunk rev. 42540
      Browsers: all
      Server: Tomcat7.0.42
    • Assignee Priority:
      P2

      Description

      QA test app: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/listControl
      Test page: /listControlRepeat.jsf

      1) Every second selection, drag or move of a list item within the same list or between the two lists from the listControl within iu:repeat fails to be persisted.

      2) When moving items between the lists using the listControl buttons, the item to be moved fails to be rendered in the destination list until the Submit button is pressed.
      When the Submit button is pressed, the change is persisted only every second trial, see 1) above.
      Occasionally a server error is seen when submitting the form after moving items via the control buttons:

      Sep 10, 2014 2:09:30 PM com.sun.faces.context.AjaxExceptionHandlerImpl handlePartialResponseError
      SEVERE: org.icefaces.ace.json.JSONException: JSONArray[0] is not a number.
             at org.icefaces.ace.json.JSONArray.getDouble(JSONArray.java:308)
             at org.icefaces.ace.json.JSONArray.getInt(JSONArray.java:325)
             at org.icefaces.ace.component.list.ListDecoder.processSelections(ListDecoder.java:49)
             at org.icefaces.ace.component.list.ListRenderer.decode(ListRenderer.java:74)
             at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:831)
             at org.icefaces.impl.component.UISeriesBase.processDecodes(UISeriesBase.java:523)
             at com.sun.faces.context.PartialViewContextImpl$PhaseAwareVisitCallback.visit(PartialViewContextImpl.java:573)
             at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
             at org.icefaces.impl.component.UISeriesBase.visitTree(UISeriesBase.java:1041)
             at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
             at com.sun.faces.facelets.component.UIRepeat.visitChildren(UIRepeat.java:856)
             at com.sun.faces.facelets.component.UIRepeat.visitTree(UIRepeat.java:759)
             at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
      ............

      Steps:
      1) - select an item (i1) from either List1 or List2 from any listControl component -> item (i1) selected.
      - press "Submit Selection" button -> list item (i1) remains selected, and List1 and List2 output text is updated on page accordingly (Pass).
      - select another item (i2) from either List1 or List2 from the same listControl component -> item (i2) selected.
      - press "Submit Selection" button -> item (i2) becomes unselected, and selection moves to the previously selected item (i1); List1 and List2 output text remains unchanged (Fail).
      Any second selection works, and the same issue is seen if trying to move items using the listControl buttons, or drag the items within the list.

      2) - select an item from any list/any listControl and press "->" or "<-" to move it to the nearby list -> item disappears from the original list, however it fails to render in the destination list.
      - press "Submit Selection" button -> item is rendered in the destination list.
      Repeating these steps will be successful only every second trial.

        Activity

        There are no subversion log entries for this issue yet.

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Carmen Cristurean
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: