ICEfaces
  1. ICEfaces
  2. ICE-10792

ace:panelStack Myfaces specific NPE when facelet=true

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 4.1
    • Fix Version/s: EE-4.1.0.GA, 4.2.BETA, 4.2
    • Component/s: ACE-Components
    • Labels:
      None
    • Environment:
      Tomcat 7, ICEfaces 4 trunk r 45903, All browsers. Not an issue with mojarra libs
    • Assignee Priority:
      P1

      Description

      An NPE occurs when facelet= true in an ace:panelStack when using myfaces libs. QA test app located at:
      http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Nightly/panelStack
      To reproduce:
      1.) Build the test app with -Dmyfaces=true, navigate to the DataTable demo (/dataTable.jsf)
      2.) Set the facelet to true
      3.) Note that the bottom panelStack is removed from the table
      4.) Use the drop down to select Employee Info
      5.) NPE occurs
      Note** this is not a specific ace:panelStack inside ace:dataTable issue. This can also be reproduced by adding the facelet="true" attribute to the ace:stackPane in the basic Overview demo.
      Stack trace:
      java.lang.NullPointerException
              at org.apache.myfaces.view.facelets.impl.FaceletCompositionContextImpl.i
      ncrementUniqueId(FaceletCompositionContextImpl.java:1036)
              at org.apache.myfaces.view.facelets.impl.DefaultFaceletContext.generateU
      niqueId(DefaultFaceletContext.java:345)
              at org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.
      apply(ComponentTagHandlerDelegate.java:218)
              at javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMe
      taTagHandler.java:50)
              at javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(D
      elegatingMetaTagHandler.java:55)
              at org.icefaces.ace.component.stackpane.StackPaneHandler.access$001(Stac
      kPaneHandler.java:25)
              at org.icefaces.ace.component.stackpane.StackPaneHandler$2.run(StackPane
      Handler.java:50)
              at org.icefaces.ace.component.stackpane.StackPane.createChildren(StackPa
      ne.java:121)
              at org.icefaces.ace.component.stackpane.StackPaneRenderer.encodeChildren
      (StackPaneRenderer.java:77)
              at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.
      java:643)
              at javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:
      541)
              at javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:
      550)
              at javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:
      550)
              at org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.render
      ColumnBody(HtmlTableRendererBase.java:680)
              at org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encode
      ColumnChild(HtmlTableRendererBase.java:639)
              at org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encode
      InnerHtml(HtmlTableRendererBase.java:493)
              at org.apache.myfaces.shared.renderkit.html.HtmlTableRendererBase.encode
      Children(HtmlTableRendererBase.java:208)
              at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.
      java:643)
              at javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:
      541)
              at javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:
      550)
              at javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:
      550)
              at org.icefaces.impl.context.DOMPartialViewContext.processPartial(DOMPar
      tialViewContext.java:165)
              at javax.faces.context.PartialViewContextWrapper.processPartial(PartialV
      iewContextWrapper.java:85)
              at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:516)
              at javax.faces.component.UIComponentBase.encodeAll(UIComponentBase.java:
      541)
              at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.rende
      rView(FaceletViewDeclarationLanguage.java:1891)
              at org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandler
      Impl.java:313)
              at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrap
      per.java:58)
              at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderRes
      ponseExecutor.java:116)
              at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:
      267)
              at javax.faces.webapp.FacesServlet.service(FacesServlet.java:200)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:305)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:210)
              at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
      alve.java:222)
              at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
      alve.java:123)
              at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
      torBase.java:502)
              at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
      ava:171)
              at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
      ava:99)
              at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
      953)
              at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
      ve.java:118)
              at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
      a:408)
              at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp
      11Processor.java:1023)
              at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
      AbstractProtocol.java:589)
              at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoin
      t.java:310)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.
      java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
      .java:615)
              at java.lang.Thread.run(Thread.java:745)

        Issue Links

          Activity

            People

            • Assignee:
              Judy Guglielmin
              Reporter:
              Liana Munroe
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: