Steven De Groote created MYFACES-4335:
-----------------------------------------

             Summary: Unable to resolve SessionScoped bean in PhaseListener 
after forward
                 Key: MYFACES-4335
                 URL: https://issues.apache.org/jira/browse/MYFACES-4335
             Project: MyFaces Core
          Issue Type: Bug
            Reporter: Steven De Groote


In a regular Phaselistener, as of JSF 2.2, it is usually possible to 
[@Inject|https://github.com/Inject] a bean. In my case, I'm injecting a 
SessionScoped bean, which works well in normal conditions.

However, if an exception occurs, and the PhaseListener is called again for the 
error page, then the injection point fails. This should not happen.

{{org.jboss.weld.contexts.ContextNotActiveException: WELD-001303:
 No active contexts for scope type 
javax.enterprise.context.SessionScoped at 
org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:647)
 at 
org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.getIfExists(ContextualInstanceStrategy.java:89)
 at 
org.jboss.weld.bean.ContextualInstanceStrategy$CachingContextualInstanceStrategy.getIfExists(ContextualInstanceStrategy.java:164)
 at 
org.jboss.weld.bean.ContextualInstance.getIfExists(ContextualInstance.java:63)
 at 
org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:87)
 at 
org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:131)
 at 
org.primefaces.test.WebSession$Proxy$_$$_WeldClientProxy.getName(Unknown
 Source) at 
org.primefaces.test.LoginController.afterPhase(LoginController.java:26) 
at 
org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:117)
 at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:210)
 at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:142)
 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:204) at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1230)
 at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:729)
 at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:426)
 at 
com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:182)
 at 
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:93)
 at 
com.ibm.ws.security.jaspi.JaspiServletFilter.doFilter(JaspiServletFilter.java:56)
 }}

{{}}

Note this is the same issue as I posted on OpenLiberty (but without response).
Over there, I uploaded a reprocase: 
https://github.com/OpenLiberty/open-liberty/issues/9929{{}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to