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

Leonardo Uribe commented on MYFACES-3907:
-----------------------------------------

In ManagedBeanBuilder.java:560 I can see the following line:

        if (facesContext.getViewRoot().getViewMap().get(beanName) != null)

I think we can fix it with:

        if (facesContext.getViewRoot() != null && 
            facesContext.getViewRoot().getViewMap().get(beanName) != null)

I don't see how a facesContext instance is passed without a dummy view root 
inside, because in AbstractFacesInitializer there is a code that set it, but it 
is something valid, so I'll commit the solution.

It could be good if you can provide the full stack trace, to verify the 
conditions where this code is called.


> NullPointerException in ManagedBeanBuilder after server restart
> ---------------------------------------------------------------
>
>                 Key: MYFACES-3907
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3907
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.2.4
>            Reporter: Dennis Kieselhorst
>             Fix For: 2.0.22, 2.1.16, 2.2.5
>
>
> After server restart we sometimes get a NullPointerException in 
> ManagedBeanBuilder when resolving a managed bean property. This should be 
> avoided.
> {noformat}
> java.lang.NullPointerException: null
>       at 
> org.apache.myfaces.config.ManagedBeanBuilder.getScope(ManagedBeanBuilder.java:560)
>       at 
> org.apache.myfaces.config.ManagedBeanBuilder.getNarrowestScope(ManagedBeanBuilder.java:464)
>       at 
> org.apache.myfaces.config.ManagedBeanBuilder.isInValidScope(ManagedBeanBuilder.java:435)
>       at 
> org.apache.myfaces.config.ManagedBeanBuilder.initializeProperties(ManagedBeanBuilder.java:319)
>       at 
> org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(ManagedBeanBuilder.java:163)
>       at 
> org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.createManagedBean(ManagedBeanResolver.java:333)
>       at 
> org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.getValue(ManagedBeanResolver.java:296)
>       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:188)
>       at 
> org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:179)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to