ICEfaces
  1. ICEfaces
  2. ICE-6824

NullPointerException thrown when display a page with an un-initialized ice:tree component even with rendered="false"

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.1, EE-2.0.0.GA
    • Fix Version/s: EE-3.0.0.BETA, 3.0.1
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      JSF/ICEfaces 2
    • Workaround Exists:
      Yes
    • Workaround Description:
      Initialize the tree model with a dummy model.

      Description

      If a tree components backing tree model is not initialized on page load then a NullPointerException is thrown. This is even when the rendered attribute is set to false. This behavior is not seen in the ICEfaces 1.8.x releases.

      Exception Stack Trace:

      SEVERE: Error Rendering View[/welcomeICEfaces.xhtml]
      java.lang.NullPointerException
              at com.icesoft.faces.component.tree.Tree.visitRows(Tree.java:1446)
              at com.icesoft.faces.component.tree.Tree.visitTree(Tree.java:1401)
              at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
              at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
              at javax.faces.component.UIForm.visitTree(UIForm.java:344)
              at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
              at javax.faces.component.UIComponent.visitTree(UIComponent.java:1600)
              at com.sun.faces.application.view.StateManagementStrategyImpl.saveView(StateManagementStrategyImpl.java:160)
              at com.sun.faces.application.StateManagerImpl.saveView(StateManagerImpl.java:133)
              at com.sun.faces.application.view.WriteBehindStateWriter.flushToWriter(WriteBehindStateWriter.java:225)
              at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:418)
              at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
              at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
              at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
              at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
              at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
              at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
              at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
              at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
              at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
              at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
              at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
              at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
              at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859)
              at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
              at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
              at java.lang.Thread.run(Thread.java:619)

        Activity

        Hide
        Mark Collette added a comment -

        This looks suspiciously like the issues we solved with the data tables, where visitTree needs to look at the hints to see it shouldn't iterate per row/node since we're doing state saving.

        Show
        Mark Collette added a comment - This looks suspiciously like the issues we solved with the data tables, where visitTree needs to look at the hints to see it shouldn't iterate per row/node since we're doing state saving.

          People

          • Assignee:
            Arturo Zambrano
            Reporter:
            Arran Mccullough
          • Votes:
            3 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: