[
https://issues.apache.org/jira/browse/MYFACES-3942?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Leonardo Uribe resolved MYFACES-3942.
-------------------------------------
Resolution: Fixed
Fix Version/s: 2.2.7
Assignee: Leonardo Uribe
Thanks to Bauke Scholtz for the report.
> <f:viewParam binding> causes NPE because UIViewRoot is null
> -----------------------------------------------------------
>
> Key: MYFACES-3942
> URL: https://issues.apache.org/jira/browse/MYFACES-3942
> Project: MyFaces Core
> Issue Type: Bug
> Affects Versions: 2.2.6
> Environment: Tomcat 8.0.14 and TomEE 2.0.0 snapshot.
> Reporter: Bauke Scholtz
> Assignee: Leonardo Uribe
> Fix For: 2.2.7
>
>
> Using {{binding}} attribute on {{<f:viewParam>}} as follows:
> {code}
> <f:viewParam name="foo" binding="#{foo}" />
> {code}
> causes regardless of the binding location (Facelet itself as demonstrated
> above, request scoped bean, session scoped bean, etc) the following
> exception:
> {code}
> java.lang.NullPointerException
> at
> org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.createComponent(ComponentTagHandlerDelegate.java:534)
> at
> org.apache.myfaces.view.facelets.tag.jsf.ComponentTagHandlerDelegate.apply(ComponentTagHandlerDelegate.java:284)
> at
> javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:50)
> at
> org.apache.myfaces.view.facelets.tag.jsf.core.ViewMetadataHandler.apply(ViewMetadataHandler.java:85)
> at
> org.apache.myfaces.view.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:195)
> at
> org.apache.myfaces.view.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:59)
> at
> org.apache.myfaces.view.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:48)
> at
> org.apache.myfaces.view.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:188)
> at
> org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage$FaceletViewMetadata.createMetadataView(FaceletViewDeclarationLanguage.java:2752)
> at
> org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:255)
> at
> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:196)
> at
> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:143)
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
> ...
> {code}
> Turns out that {{UIViewRoot}} is {{null}} while the code didn't expect that.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)