You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Leonardo Uribe (JIRA)" <de...@myfaces.apache.org> on 2011/05/31 20:07:47 UTC

[jira] [Commented] (MYFACES-3161) UIData.restoreDescendantComponentStates fails when empty datatable is used and a new row is created

    [ https://issues.apache.org/jira/browse/MYFACES-3161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13041720#comment-13041720 ] 

Leonardo Uribe commented on MYFACES-3161:
-----------------------------------------

Exception is here:

31.05.2011 16:53:57 org.apache.myfaces.renderkit.ErrorPageWriter handleThrowable
SCHWERWIEGEND: An exception occurred
javax.faces.FacesException: java.lang.NullPointerException
    at org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.wrap(ExceptionHandlerImpl.java:241)
    at org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.handle(ExceptionHandlerImpl.java:156)
    at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:191)
    at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
    at org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.execute(CodiLifecycleWrapper.java:94)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:546)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:483)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:516)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:230)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:956)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:411)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:188)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:891)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
    at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:247)
    at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:151)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
    at org.eclipse.jetty.server.Server.handle(Server.java:353)
    at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:598)
    at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1076)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:805)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:218)
    at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:427)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:510)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:450)
    at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.NullPointerException
    at javax.faces.component.UIData.restoreDescendantComponentStates(UIData.java:609)
    at javax.faces.component.UIData.restoreDescendantComponentStates(UIData.java:620)
    at javax.faces.component.UIData.restoreDescendantComponentStates(UIData.java:620)
    at javax.faces.component.UIData.restoreDescendantComponentStates(UIData.java:620)
    at javax.faces.component.UIData.restoreDescendantComponentStates(UIData.java:620)
    at javax.faces.component.UIData.restoreDescendantComponentStates(UIData.java:620)
    at javax.faces.component.UIData.restoreDescendantComponentStates(UIData.java:620)
    at javax.faces.component.UIData.setRowIndex(UIData.java:552)
    at javax.faces.component.UIData.visitTree(UIData.java:1400)
    at javax.faces.component.UIComponent.visitTree(UIComponent.java:797)
    at javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:992)
    at javax.faces.component.UINamingContainer.visitTree(UINamingContainer.java:161)
    at javax.faces.component.UIComponent.visitTree(UIComponent.java:797)
    at javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:992)
    at javax.faces.component.UIComponent.visitTree(UIComponent.java:797)
    at javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:992)
    at javax.faces.component.UIForm.visitTree(UIForm.java:222)
    at javax.faces.component.UIComponent.visitTree(UIComponent.java:797)
    at javax.faces.component.UIComponentBase.visitTree(UIComponentBase.java:992)
    at org.apache.myfaces.view.facelets.tag.ui.DebugPhaseListener._doTreeVisit(DebugPhaseListener.java:310)
    at org.apache.myfaces.view.facelets.tag.ui.DebugPhaseListener.afterPhase(DebugPhaseListener.java:286)
    at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:111)
    at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:185)
    ... 27 more

> UIData.restoreDescendantComponentStates fails when empty datatable is used and a new row is created
> ---------------------------------------------------------------------------------------------------
>
>                 Key: MYFACES-3161
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3161
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: JSR-314
>    Affects Versions: 2.0.6, 2.1.0
>            Reporter: Werner Punz
>            Assignee: Leonardo Uribe
>            Priority: Critical
>             Fix For: 2.0.7, 2.1.1
>
>
> The optimization done on MYFACES-3111 that skips save descendants children state, passing the state as null revealed the need to check for null on child states.
> This happens only when the row is empty and a new row is created.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira