Hi An example to reproduce it could help in this case.
Leonardo. On Jun 10, 2014 11:21 PM, "[email protected]" <[email protected]> wrote: > (republished here following the advice of Gerhard Petracek on > [email protected]) > > Dear all, > > I have the following NPE when view pooling is activated and > CACHE_EL_EXPRESSIONS is set to alwaysRecompile : > > java.lang.NullPointerException at org.apache.myfaces.view.facelets.el. > FaceletStateValueExpression.getValue(FaceletStateValueExpression.java:107) > at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:68) at > org.apache.el.parser.AstValue.getValue(AstValue.java:161) at > org.apache.el.parser.AstEmpty.getValue(AstEmpty.java:47) at > org.apache.el.parser.AstNot.getValue(AstNot.java:44) at org.apache.el. > ValueExpressionImpl.getValue(ValueExpressionImpl.java:185) at > org.apache.myfaces.view.facelets.el.ContextAwareTagValueExpression > .getValue(ContextAwareTagValueExpression.java:96) at > javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:377) > at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:1211) > at > javax.faces.component.UIComponentBase._isPhaseExecutable(UIComponentBase.java:2440) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1386) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1401) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1401) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1401) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1401) > at javax.faces.component.UIForm.processDecodes(UIForm.java:154) at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1401) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1401) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1401) > at > javax.faces.component.UIViewRoot._processDecodesDefault(UIViewRoot.java:1687) > at javax.faces.component.UIViewRoot.access$500(UIViewRoot.java:77) at > javax.faces.component.UIViewRoot$ApplyRequestValuesPhaseProcess > or.process(UIViewRoot.java:1778) at javax.faces.component. > UIViewRoot._process(UIViewRoot.java:1653) at javax.faces.component. > UIViewRoot.processDecodes(UIViewRoot.java:869) at > org.apache.myfaces.lifecycle.ApplyRequestValuesExecutor.execute( > ApplyRequestValuesExecutor.java:42) at org.apache.myfaces.lifecycle. > LifecycleImpl.executePhase(LifecycleImpl.java:196) at > org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:143) > at org.apache.deltaspike.jsf.impl.listener.request. > DeltaSpikeLifecycleWrapper.execute(DeltaSpikeLifecycleWrapper.java:89) at > javax.faces.lifecycle.LifecycleWrapper.execute(LifecycleWrapper.java:46) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198) at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > ApplicationFilterChain.java:305) at org.apache.catalina.core. > ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at > fr.senat.faces.filters.HibernateNoCacheFilter.doFilter( > HibernateNoCacheFilter.java:123) at org.apache.catalina.core. > ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) > at org.apache.catalina.core.ApplicationFilterChain.doFilter( > ApplicationFilterChain.java:210) at fr.senat.faces.filters. > HibernateSessionConversationFilter.doFilter(HibernateSessionConversationFilter.java:128) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > ApplicationFilterChain.java:243) at org.apache.catalina.core. > ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at > fr.senat.faces.filters.HibernateUserFromPrincipalFilter.doFilter( > HibernateUserFromPrincipalFilter.java:43) at org.apache.catalina.core. > ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) > at org.apache.catalina.core.ApplicationFilterChain.doFilter( > ApplicationFilterChain.java:210) at fr.senat.faces.filters. > SessionCreationTrackingFilter.doFilter(SessionCreationTrackingFilter.java:48) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > ApplicationFilterChain.java:243) at org.apache.catalina.core. > ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:581) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) > at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) > at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) > at org.apache.coyote.http11.AbstractHttp11Processor.process( > AbstractHttp11Processor.java:1009) at org.apache.coyote.AbstractProtocol$ > AbstractConnectionHandler.process(AbstractProtocol.java:589) at > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) > 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:744) > > This NPE occurs in the evalutation of an EL expression in a tag component > which is "cleanly" included. By clean, I mean it that the inclusion is > defined in a "normal" xhtml file, in opposition to some dynamic inclusions > I perform sometimes. This tag component is included in my application > banner. It is not rendered during login, then displayed once the user is > logged. This is done using standard rendered="..." attribute and did not > cause a bug before. > > In FaceletStateValueExpression#getWrapped(ELContext context) > > public ValueExpression getWrapped(ELContext context) > { > FacesContext facesContext = (FacesContext) context.getContext( > FacesContext.class); > if (facesContext == null) > { > facesContext = FacesContext.getCurrentInstance(); > } > UIViewRoot root = facesContext.getViewRoot(); > FaceletState map = (FaceletState) root.getAttributes().get( > ComponentSupport.FACELET_STATE_INSTANCE); > return map.getBinding(uniqueId, key); > } > > the map is defined but does not contained the keyed value. Thus the NPE in > FaceletStateValueExpression#getValue(ELContext context). > > The problem completely disappears if I switch to CACHE_EL_EXPRESSIONS = > strict. > > It occurs with myfaces 2.2.2 and deltaspike 0.7 and 0.8-SNAPSHOT. The > above stacktrace is obtained with 0.8-SNAPSHOT. I do not know if I it is a > MyFaces of DS bug. > > Tell me what additional information I can provide... > > Ludovic > | > | AVANT D'IMPRIMER, PENSEZ A L'ENVIRONNEMENT. > | > >

