MyFaces cannot resolve @ManagedProperty on startup, throws
UnsupportedOperationException
----------------------------------------------------------------------------------------
Key: MYFACES-3116
URL: https://issues.apache.org/jira/browse/MYFACES-3116
Project: MyFaces Core
Issue Type: Bug
Affects Versions: 2.0.5
Environment: Tomcat 6
Reporter: Alois Glomann
I have a managedbean which initializes some services:
@ManagedBean(eager = true)
@ApplicationScoped
public class Services {
private SecurityContext securityContext;
@PostConstruct
public void init() {
securityContext = new SecurityContext();
}
}
In another bean i want to inject a ManagedProperty of type SecurityContext
(applicationscoped as well)
@ManagedBean(eager = true)
@ApplicationScoped
public class Validator{
@ManagedProperty("#{services.securityContext}")
private SecurityContext securityContext;
//irrelevant code ...
public void setSecurityContext(SecurityContext securityContext) {
this.securityContext = securityContext;
}
}
This is working with latest version of the reference implementation (mojarra
2.1.0). I was trying to use MyFaces because mojarra has another ugly bug, which
initilizes application scoped beans twice.
On application startup myfaces cannot init Validator due to this exception:
INFO: Creating instance of com.eskupina.webrepositoryinterface.Services
26.04.2011 12:20:14
org.apache.myfaces.config.annotation.TomcatAnnotationLifecycleProvider
newInstance
INFO: Creating instance of com.eskupina.webrepositoryinterface.Validator
26.04.2011 12:20:14 org.apache.myfaces.webapp.AbstractFacesInitializer initFaces
SCHWERWIEGEND: An error occured while initializing MyFaces: This method is not
supported during startup
java.lang.UnsupportedOperationException: This method is not supported during
startup
at
org.apache.myfaces.context.servlet.StartupServletExternalContextImpl.getRequestMap(StartupServletExternalContextImpl.java:149)
at
org.apache.myfaces.config.ManagedBeanBuilder.getScope(ManagedBeanBuilder.java:540)
at
org.apache.myfaces.config.ManagedBeanBuilder.getNarrowestScope(ManagedBeanBuilder.java:462)
at
org.apache.myfaces.config.ManagedBeanBuilder.isInValidScope(ManagedBeanBuilder.java:433)
at
org.apache.myfaces.config.ManagedBeanBuilder.initializeProperties(ManagedBeanBuilder.java:322)
at
org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(ManagedBeanBuilder.java:169)
at
org.apache.myfaces.webapp.AbstractFacesInitializer._createEagerBeans(AbstractFacesInitializer.java:221)
at
org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces(AbstractFacesInitializer.java:138)
at
org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:111)
at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)
at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:905)
at
org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:740)
at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:500)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)
at
org.apache.catalina.core.StandardService.start(StandardService.java:519)
at
org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
26.04.2011 12:20:14 org.apache.catalina.core.StandardContext start
SCHWERWIEGEND: Error filterStart
26.04.2011 12:20:14 org.apache.catalina.core.StandardContext start
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira