Hi guys,
In Tomee 1.0
It seems that InvocationTargetException is thrown if you have a bean which
constructor invokes some methods of it's base class.
@Singleton
@Startup
@ConcurrencyManagement(ConcurrencyManagementType.BEAN)
public class StartupBean {
@EJB
private HelloBean hello;
@PostConstruct
public void init() {
hello.sayHello();
}
}
public class BaseHello {
private String helloMsg;
public String getHelloMessage() {
return helloMsg;
}
public void setHelloMessage(String helloMsg) {
this.helloMsg = helloMsg;
}
}
@Singleton
@ConcurrencyManagement(ConcurrencyManagementType.BEAN)
public class HelloBean extends BaseHello {
public HelloBean() {
setHelloMessage("Hola");
}
public void sayHello() {
System.out.println(getHelloMessage());
}
}
Upon startup InvocationTargetException is thrown:
SEVERE: The bean instance StartupBean threw a system
exception:java.lang.InternalError:
java.lang.reflect.InvocationTargetException
java.lang.InternalError: java.lang.reflect.InvocationTargetException
at
org.apache.openejb.util.proxy.LocalBeanProxyFactory.newProxyInstance(LocalBeanProxyFactory.java:44)
at
org.apache.openejb.core.ivm.EjbHomeProxyHandler.createProxy(EjbHomeProxyHandler.java:138)
at
org.apache.openejb.core.ivm.EjbHomeProxyHandler.create(EjbHomeProxyHandler.java:289)
at
org.apache.openejb.core.ivm.EjbHomeProxyHandler._invoke(EjbHomeProxyHandler.java:174)
at
org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:284)
at $Proxy53.create(Unknown Source)
at
org.apache.openejb.core.ivm.naming.BusinessLocalBeanReference.getObject(BusinessLocalBeanReference.java:33)
at
org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:173)
at
org.apache.openejb.core.ivm.naming.IntraVmJndiReference.getObject(IntraVmJndiReference.java:41)
at
org.apache.openejb.core.ivm.naming.IvmContext.lookup(IvmContext.java:173)
at
org.apache.openejb.InjectionProcessor.fillInjectionProperties(InjectionProcessor.java:182)
at
org.apache.openejb.InjectionProcessor.construct(InjectionProcessor.java:110)
at
org.apache.openejb.InjectionProcessor.createInstance(InjectionProcessor.java:83)
at org.apache.openejb.BeanContext.newInstance(BeanContext.java:1284)
at
org.apache.openejb.core.singleton.SingletonInstanceManager.createInstance(SingletonInstanceManager.java:174)
at
org.apache.openejb.core.singleton.SingletonInstanceManager.access$100(SingletonInstanceManager.java:66)
at
org.apache.openejb.core.singleton.SingletonInstanceManager$1.call(SingletonInstanceManager.java:115)
at
org.apache.openejb.core.singleton.SingletonInstanceManager$1.call(SingletonInstanceManager.java:113)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at
org.apache.openejb.core.singleton.SingletonInstanceManager.getInstance(SingletonInstanceManager.java:124)
at
org.apache.openejb.core.singleton.SingletonInstanceManager.initialize(SingletonInstanceManager.java:90)
at
org.apache.openejb.core.singleton.SingletonInstanceManager.start(SingletonInstanceManager.java:81)
at
org.apache.openejb.core.singleton.SingletonContainer.start(SingletonContainer.java:118)
at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:795)
at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:506)
at
org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:634)
at
org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:588)
at
org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:117)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5161)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
at
org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
--
View this message in context:
http://openejb.979440.n4.nabble.com/InvocationTargetException-upon-bean-initialization-tp4657081.html
Sent from the OpenEJB User mailing list archive at Nabble.com.