ICEfaces
  1. ICEfaces
  2. ICE-10551

ace:dataTable - column reordering fails

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-3.3.0.GA_P02
    • Fix Version/s: EE-4.0.0.GA, EE-3.3.0.GA_P03, 4.1
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      ICEfaces EE-4.0.0 revision# 41078 \ ICEfaces4 trunk r. 44186
      Server: tomcat7
      Browser: all
      JSF: Mojarra 2.2.10
    • Assignee Priority:
      P1

      Description

      ace:dataTable columns reordering does not work more than once. Trying to re-order columns afterwards, or just clicking on the dataTable column headers results in NullPointerException.
      This started failing at Jenkins ICEfaces4 trunk Build # 1109: http://dev.icesoft.com/jenkins/job/ICEfaces%204%20Trunk%20%28Continuous%29/1109/

      This is reproducible with showcase > Column Reorder demo, and with the QA test app for ace:dataTable:
      http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/dataTable
      Test page: /columnOrderTest.jsf.

      Mar 09, 2015 11:28:34 AM com.sun.faces.lifecycle.UpdateModelValuesPhase execute
      WARNING: java.lang.NullPointerException
      Mar 09, 2015 11:28:34 AM org.icefaces.impl.context.DOMPartialRenderCallback visit
      SEVERE: Subtree rendering failed for class org.icefaces.ace.component.datatable.DataTable form:carTable
      java.lang.NullPointerException
          at org.icefaces.ace.util.ComponentUtils.resolveField(ComponentUtils.java:123)
          at org.icefaces.ace.model.table.SortCriteria.<init>(SortCriteria.java:36)
          at org.icefaces.ace.component.datatable.DataTable.getSortCriteria(DataTable.java:1139)
          at org.icefaces.ace.component.datatable.DataTable.processSorting(DataTable.java:1281)
          at org.icefaces.ace.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:120)
          at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
          at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
          at org.icefaces.impl.context.DOMPartialRenderCallback.visit(DOMPartialViewContext.java:854)
          at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
          at org.icefaces.ace.component.datatable.DataTable.visitTree(DataTable.java:1511)
          at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
          at javax.faces.component.UIForm.visitTree(UIForm.java:371)
          at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
          at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
          at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
          at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
          at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
          at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
          at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
          at org.icefaces.impl.context.DOMPartialViewContext.renderSubtrees(DOMPartialViewContext.java:502)
          at org.icefaces.impl.context.DOMPartialViewContext.processPartial(DOMPartialViewContext.java:187)
          at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:219)
          at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:1004)
          at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
          at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:430)
          at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
          at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
          at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
          at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
          at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
          at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)

        Activity

        Carmen Cristurean created issue -
        Carmen Cristurean made changes -
        Field Original Value New Value
        Fix Version/s EE-4.0.0.GA [ 11171 ]
        Carmen Cristurean made changes -
        Description ace:dataTable columns reordering does not work more than once. Trying to re-order columns afterwards, or just clicking on the dataTable column headers results in NullPointerException.

        This is reproducible with showcase > Column Reorder demo, and with the QA test app for ace:dataTable -> /columnOrderTest.jsf.

        Mar 09, 2015 11:28:34 AM com.sun.faces.lifecycle.UpdateModelValuesPhase execute
        WARNING: java.lang.NullPointerException
        Mar 09, 2015 11:28:34 AM org.icefaces.impl.context.DOMPartialRenderCallback visit
        SEVERE: Subtree rendering failed for class org.icefaces.ace.component.datatable.DataTable form:carTable
        java.lang.NullPointerException
            at org.icefaces.ace.util.ComponentUtils.resolveField(ComponentUtils.java:123)
            at org.icefaces.ace.model.table.SortCriteria.<init>(SortCriteria.java:36)
            at org.icefaces.ace.component.datatable.DataTable.getSortCriteria(DataTable.java:1139)
            at org.icefaces.ace.component.datatable.DataTable.processSorting(DataTable.java:1281)
            at org.icefaces.ace.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:120)
            at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
            at org.icefaces.impl.context.DOMPartialRenderCallback.visit(DOMPartialViewContext.java:854)
            at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
            at org.icefaces.ace.component.datatable.DataTable.visitTree(DataTable.java:1511)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIForm.visitTree(UIForm.java:371)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at org.icefaces.impl.context.DOMPartialViewContext.renderSubtrees(DOMPartialViewContext.java:502)
            at org.icefaces.impl.context.DOMPartialViewContext.processPartial(DOMPartialViewContext.java:187)
            at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:219)
            at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:1004)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
            at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:430)
            at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
        ace:dataTable columns reordering does not work more than once. Trying to re-order columns afterwards, or just clicking on the dataTable column headers results in NullPointerException.

        This is reproducible with showcase > Column Reorder demo, and with the QA test app for ace:dataTable:
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/dataTable
        Test page: /columnOrderTest.jsf.

        Mar 09, 2015 11:28:34 AM com.sun.faces.lifecycle.UpdateModelValuesPhase execute
        WARNING: java.lang.NullPointerException
        Mar 09, 2015 11:28:34 AM org.icefaces.impl.context.DOMPartialRenderCallback visit
        SEVERE: Subtree rendering failed for class org.icefaces.ace.component.datatable.DataTable form:carTable
        java.lang.NullPointerException
            at org.icefaces.ace.util.ComponentUtils.resolveField(ComponentUtils.java:123)
            at org.icefaces.ace.model.table.SortCriteria.<init>(SortCriteria.java:36)
            at org.icefaces.ace.component.datatable.DataTable.getSortCriteria(DataTable.java:1139)
            at org.icefaces.ace.component.datatable.DataTable.processSorting(DataTable.java:1281)
            at org.icefaces.ace.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:120)
            at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
            at org.icefaces.impl.context.DOMPartialRenderCallback.visit(DOMPartialViewContext.java:854)
            at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
            at org.icefaces.ace.component.datatable.DataTable.visitTree(DataTable.java:1511)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIForm.visitTree(UIForm.java:371)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at org.icefaces.impl.context.DOMPartialViewContext.renderSubtrees(DOMPartialViewContext.java:502)
            at org.icefaces.impl.context.DOMPartialViewContext.processPartial(DOMPartialViewContext.java:187)
            at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:219)
            at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:1004)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
            at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:430)
            at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
        Ken Fyten made changes -
        Assignee Arturo Zambrano [ artzambrano ]
        Assignee Priority P1 [ 10010 ]
        Carmen Cristurean made changes -
        Description ace:dataTable columns reordering does not work more than once. Trying to re-order columns afterwards, or just clicking on the dataTable column headers results in NullPointerException.

        This is reproducible with showcase > Column Reorder demo, and with the QA test app for ace:dataTable:
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/dataTable
        Test page: /columnOrderTest.jsf.

        Mar 09, 2015 11:28:34 AM com.sun.faces.lifecycle.UpdateModelValuesPhase execute
        WARNING: java.lang.NullPointerException
        Mar 09, 2015 11:28:34 AM org.icefaces.impl.context.DOMPartialRenderCallback visit
        SEVERE: Subtree rendering failed for class org.icefaces.ace.component.datatable.DataTable form:carTable
        java.lang.NullPointerException
            at org.icefaces.ace.util.ComponentUtils.resolveField(ComponentUtils.java:123)
            at org.icefaces.ace.model.table.SortCriteria.<init>(SortCriteria.java:36)
            at org.icefaces.ace.component.datatable.DataTable.getSortCriteria(DataTable.java:1139)
            at org.icefaces.ace.component.datatable.DataTable.processSorting(DataTable.java:1281)
            at org.icefaces.ace.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:120)
            at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
            at org.icefaces.impl.context.DOMPartialRenderCallback.visit(DOMPartialViewContext.java:854)
            at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
            at org.icefaces.ace.component.datatable.DataTable.visitTree(DataTable.java:1511)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIForm.visitTree(UIForm.java:371)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at org.icefaces.impl.context.DOMPartialViewContext.renderSubtrees(DOMPartialViewContext.java:502)
            at org.icefaces.impl.context.DOMPartialViewContext.processPartial(DOMPartialViewContext.java:187)
            at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:219)
            at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:1004)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
            at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:430)
            at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
        ace:dataTable columns reordering does not work more than once. Trying to re-order columns afterwards, or just clicking on the dataTable column headers results in NullPointerException.
        This started failing at Jenkins ICEfaces4 trunk Build # 1109: http://dev.icesoft.com/jenkins/job/ICEfaces%204%20Trunk%20%28Continuous%29/1109/

        This is reproducible with showcase > Column Reorder demo, and with the QA test app for ace:dataTable:
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/dataTable
        Test page: /columnOrderTest.jsf.

        Mar 09, 2015 11:28:34 AM com.sun.faces.lifecycle.UpdateModelValuesPhase execute
        WARNING: java.lang.NullPointerException
        Mar 09, 2015 11:28:34 AM org.icefaces.impl.context.DOMPartialRenderCallback visit
        SEVERE: Subtree rendering failed for class org.icefaces.ace.component.datatable.DataTable form:carTable
        java.lang.NullPointerException
            at org.icefaces.ace.util.ComponentUtils.resolveField(ComponentUtils.java:123)
            at org.icefaces.ace.model.table.SortCriteria.<init>(SortCriteria.java:36)
            at org.icefaces.ace.component.datatable.DataTable.getSortCriteria(DataTable.java:1139)
            at org.icefaces.ace.component.datatable.DataTable.processSorting(DataTable.java:1281)
            at org.icefaces.ace.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:120)
            at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
            at org.icefaces.impl.context.DOMPartialRenderCallback.visit(DOMPartialViewContext.java:854)
            at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
            at org.icefaces.ace.component.datatable.DataTable.visitTree(DataTable.java:1511)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIForm.visitTree(UIForm.java:371)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at javax.faces.component.UIComponent.visitTree(UIComponent.java:1700)
            at org.icefaces.impl.context.DOMPartialViewContext.renderSubtrees(DOMPartialViewContext.java:502)
            at org.icefaces.impl.context.DOMPartialViewContext.processPartial(DOMPartialViewContext.java:187)
            at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:219)
            at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:1004)
            at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
            at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:430)
            at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
            at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
            at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
            at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
            at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #44190 Tue Mar 10 10:56:57 MDT 2015 art.zambrano ICE-10551 fix to cause a full table update for column reordering requests
        Files Changed
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/datatable/DataTableRenderer.java
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/datatable/DataTableDecoder.java
        Commit graph MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/datatable/DataTableMeta.java
        Hide
        Arturo Zambrano added a comment -

        r44190: committed fix to cause a full table update for column reordering requests, since the rows and header were being updated individually, without re-applying all the client-side behaviour.

        Show
        Arturo Zambrano added a comment - r44190: committed fix to cause a full table update for column reordering requests, since the rows and header were being updated individually, without re-applying all the client-side behaviour.
        Arturo Zambrano made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Judy Guglielmin added a comment -

        reopen to apply fix to ICEfaces-3.3.0-P03

        Show
        Judy Guglielmin added a comment - reopen to apply fix to ICEfaces-3.3.0-P03
        Judy Guglielmin made changes -
        Resolution Fixed [ 1 ]
        Status Resolved [ 5 ] Reopened [ 4 ]
        Judy Guglielmin made changes -
        Fix Version/s EE-3.3.0.GA_P03 [ 11572 ]
        Fix Version/s EE-4.0.0.GA [ 11171 ]
        Judy Guglielmin made changes -
        Fix Version/s EE-4.0.0.GA [ 11171 ]
        Judy Guglielmin made changes -
        Affects Version/s EE-3.3.0.GA_P02 [ 11371 ]
        Affects Version/s EE-4.0.0.GA [ 11171 ]
        Hide
        Arturo Zambrano added a comment -

        r44434: backported fix to 3.3 EE maintenance branch.

        Show
        Arturo Zambrano added a comment - r44434: backported fix to 3.3 EE maintenance branch.
        Arturo Zambrano made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Hide
        Carmen Cristurean added a comment - - edited

        Verified with EE-3.3.0-maintenance branch r.44434 and 3.3 P03 tag revision 44770 in IE11, Chrome41, FF34.

        Show
        Carmen Cristurean added a comment - - edited Verified with EE-3.3.0-maintenance branch r.44434 and 3.3 P03 tag revision 44770 in IE11, Chrome41, FF34.
        Judy Guglielmin made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Ken Fyten made changes -
        Resolution Fixed [ 1 ]
        Status Closed [ 6 ] Reopened [ 4 ]
        Security Private [ 10001 ]
        Ken Fyten made changes -
        Status Reopened [ 4 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Ken Fyten made changes -
        Fix Version/s 4.1 [ 11375 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Carmen Cristurean
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: