ICEfaces
  1. ICEfaces
  2. ICE-11186

ace:tree - IndexOutOfBoundsException thrown when dragging a node to the root

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-4.1.0.GA, EE-3.3.0.GA_P04
    • Fix Version/s: 4.2, EE-3.3.0.GA_P05
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      Firefox

      Description

      This issue is reproducible with the Showcase demo. With the ace:tree demo, if a City node is dragged onto the root node an IndexOutOfBoundsException is thrown. This only happens in Firefox browser, IE11 and Chrome work fine.

      Stacktrace:
      24-Nov-2016 06:58:02.063 SEVERE [http-nio-8080-exec-1] com.sun.faces.context.AjaxExceptionHandlerImpl.handlePartialResponseError java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
              at java.util.ArrayList.rangeCheck(ArrayList.java:635)
              at java.util.ArrayList.get(ArrayList.java:411)
              at org.icefaces.samples.showcase.example.ace.tree.LocationNodeImpl.getChildAt(LocationNodeImpl.java:64)
              at org.icefaces.ace.model.tree.ListNodeDataModel.navToChild(ListNodeDataModel.java:127)
              at org.icefaces.ace.model.tree.ListNodeDataModel.navToKey(ListNodeDataModel.java:108)
              at org.icefaces.ace.model.tree.ListNodeDataModel.navToKey(ListNodeDataModel.java:24)
              at org.icefaces.ace.component.tree.Tree.setNodeToKey(Tree.java:159)
              at org.icefaces.ace.component.tree.Tree.setKey(Tree.java:127)
              at org.icefaces.ace.component.tree.TreeDecoder.decodeSelection(TreeDecoder.java:148)
              at org.icefaces.ace.component.tree.TreeDecoder.decode(TreeDecoder.java:59)
              at org.icefaces.ace.component.tree.TreeRenderer$1.<init>(TreeRenderer.java:65)
              at org.icefaces.ace.component.tree.TreeRenderer.decode(TreeRenderer.java:64)
              at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:832)
              at org.icefaces.ace.component.tree.Tree.processDecodes(Tree.java:332)
              at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1222)
              at javax.faces.component.UIForm.processDecodes(UIForm.java:225)
              at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1222)
              at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1222)
              at org.icefaces.ace.component.panel.Panel.processDecodes(Panel.java:117)
              at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1222)
              at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1222)
              at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1222)
              at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1222)
              at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1222)
              at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:929)
              at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78)
              at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
              at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)
              at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
              at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
              at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
              at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
              at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
              at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
              at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
              at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
              at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
              at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
              at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
              at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
              at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
              at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
              at java.lang.Thread.run(Thread.java:745)

        Activity

        Hide
        Mircea Toma added a comment -

        Disable temporary the 'click' handlers related to node selection to avoid having them invoked during tree reordering.

        Show
        Mircea Toma added a comment - Disable temporary the 'click' handlers related to node selection to avoid having them invoked during tree reordering.
        Hide
        Liana Munroe added a comment - - edited

        Verified ICEfaces 4 trunk r49770, Tomcat 8, MS edge, IE 11, 10, FF 47, Chrome 55.
        Fix has not yet been applied to the ee-3.3.0 maintenance branch.

        Show
        Liana Munroe added a comment - - edited Verified ICEfaces 4 trunk r49770, Tomcat 8, MS edge, IE 11, 10, FF 47, Chrome 55. Fix has not yet been applied to the ee-3.3.0 maintenance branch.
        Hide
        Mircea Toma added a comment -

        Applied fix to maintanace branch.

        Show
        Mircea Toma added a comment - Applied fix to maintanace branch.
        Hide
        Liana Munroe added a comment -

        Verified ICEfaces ee-3.3.0 maintenance branch r49778, Tomcat 8, MS edge, IE 11, 10, 8, 7, FF 47, Chrome 55.

        Show
        Liana Munroe added a comment - Verified ICEfaces ee-3.3.0 maintenance branch r49778, Tomcat 8, MS edge, IE 11, 10, 8, 7, FF 47, Chrome 55.

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Arran Mccullough
          • Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: