|
Description:
|
If a singleton session bean throws an application exception in a method annotated with {{@PostConstruct}} the application exception is not visible in the log. The exception that is thrown is a {{java.lang.RuntimeException}} with the message "Could not invoke PostConstruct on the newly created bean instance, the cause is a {{java.lang.NullPointerException}} instead of the application exception.
A simple singleton session bean to replicate the bug:
{code} import javax.annotation.PostConstruct; import javax.ejb.Singleton; import javax.ejb.Startup;
@Startup @Singleton public class TestSingletonBean { @PostConstruct public void init() throws Exception { throw new Exception("Where did I go?"); } } {code}
The exception from {{server.log}}:
{code}
12
11.01 03
:
37
04
:
38
13
,
966
853
ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController]
(WorkerThread#0[144.202.230.44:53189]:)
Error installing to Start: name=startup-singleton-initiator:topLevelUnit=
javaee6-manager
test
.
jar
war
,unit=
javaee6-manager
test
.
jar
war
,bean=
TestSingletonBean
InitializerServiceBean
aliases=[startup-singleton-initiator:bean=
TestSingletonBean
InitializerServiceBean
,topLevelUnit=
javaee6-manager
test
.
jar
war
,unit=
javaee6-manager
test
.
jar
war
] state=Create: java.lang.RuntimeException: Could not invoke PostConstruct on the newly created bean instance at org.jboss.ejb3.singleton.impl.container.SingletonEJBInstanceManagerImpl.create(SingletonEJBInstanceManagerImpl.java:137)
[:1.0.0-alpha-28]
at org.jboss.ejb3.singleton.impl.container.SingletonEJBInstanceManagerImpl.get(SingletonEJBInstanceManagerImpl.java:152)
[:1.0.0-alpha-28]
at org.jboss.ejb3.singleton.deployer.StartupSingletonInitiator.start(StartupSingletonInitiator.java:84)
[:1.0.0-alpha-28]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[:1.6.0_22]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39
57
)
[:1.6.0_22]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25
43
)
[:1.6.0_22]
at java.lang.reflect.Method.invoke(Method.java:
597
616
)
[:1.6.0_22]
at org.jboss.reflect.plugins.introspection.ReflectionUtils.invoke(ReflectionUtils.java:60)
[jboss-reflect.jar:2.2.0.GA]
at org.jboss.reflect.plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:168)
[jboss-reflect.jar:2.2.0.GA]
at org.jboss.joinpoint.plugins.BasicMethodJoinPoint.dispatch(BasicMethodJoinPoint.java:66)
[jboss-reflect.jar:2.2.0.GA]
at org.jboss.kernel.plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:257)
[jboss-kernel.jar:2.2.0.GA]
at org.jboss.kernel.plugins.dependency.ExecutionWrapper.execute(ExecutionWrapper.java:47)
[jboss-kernel.jar:2.2.0.GA]
at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:125)
[jboss-kernel.jar:2.2.0.GA]
at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:72)
[jboss-kernel.jar:2.2.0.GA]
at org.jboss.kernel.plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:202)
[jboss-kernel.jar:2.2.0.GA]
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:54)
[jboss-kernel.jar:2.2.0.GA]
at org.jboss.kernel.plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42)
[jboss-kernel.jar:2.2.0.GA]
at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:379)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:2044)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:1083)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1322)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1246)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1139)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:894)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:641)
[
at org.
jboss
-dependency
.
jar:2
kernel
.
2
plugins
.
0
dependency
.
GA]
AbstractKernelController.install(AbstractKernelController.java:103)
at org.jboss.
deployers
ejb3
.
vfs
common
.
deployer
registrar
.
kernel
plugin
.
BeanMetaDataDeployer
mc
.
deploy
Ejb3McRegistrar.install
(
BeanMetaDataDeployer
Ejb3McRegistrar
.java:
182
394
)
[:2
at org
.
2
jboss
.
0
ejb3
.
GA]
common.registrar.plugin.mc.Ejb3McRegistrar.bind(Ejb3McRegistrar.java:245)
at org.jboss.
deployers
ejb3
.
vfs
proxy
.
deployer
impl
.
kernel
jndiregistrar
.
BeanMetaDataDeployer
JndiSessionRegistrarBase
.
deploy
registerProxyFactory
(
BeanMetaDataDeployer
JndiSessionRegistrarBase
.java:
58
1169
)
[:2
at org
.
2
jboss
.
0
ejb3
.
GA]
proxy.impl.jndiregistrar.JndiSessionRegistrarBase.createJndiReferenceBindingSet(JndiSessionRegistrarBase.java:510)
at org.jboss.
deployers
ejb3
.
spi
proxy
.
deployer
impl
.
helpers
jndiregistrar
.
AbstractSimpleRealDeployer
JndiSessionRegistrarBase
.
internalDeploy
bindEjb
(
AbstractSimpleRealDeployer
JndiSessionRegistrarBase
.java:
62
156
)
[:2
at org
.
2
jboss
.
0
ejb3
.
GA]
session.SessionContainer.lockedStart(SessionContainer.java:223)
at org.jboss.
deployers
ejb3
.
spi
session
.
deployer
SessionSpecContainer
.
helpers
lockedStart(SessionSpecContainer
.
AbstractRealDeployer
java:735) at org
.
deploy
jboss.ejb3.EJBContainer.start
(
AbstractRealDeployer
EJBContainer
.java:
55
1105
)
[
at sun.reflect.GeneratedMethodAccessor449.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java
:
2
43) at java
.
2
lang
.
0
reflect
.
GA]
Method.invoke(Method.java:616)
at org.jboss.
deployers
reflect
.plugins.
deployers
introspection
.
DeployerWrapper
ReflectionUtils
.
deploy
invoke
(
DeployerWrapper
ReflectionUtils
.java:
179
60
)
[:2
at org
.
2
jboss
.
0
reflect
.
GA]
plugins.introspection.ReflectMethodInfoImpl.invoke(ReflectMethodInfoImpl.java:168)
at org.jboss.
deployers
joinpoint
.plugins.
deployers
BasicMethodJoinPoint
.
DeployersImpl.doDeploy
dispatch
(
DeployersImpl
BasicMethodJoinPoint
.java:
1832
66
)
[:2
at org
.
2
jboss
.
0
kernel
.
GA]
plugins.dependency.KernelControllerContextAction$JoinpointDispatchWrapper.execute(KernelControllerContextAction.java:257)
at org.jboss.
deployers
kernel
.plugins.
deployers
dependency
.
DeployersImpl
ExecutionWrapper
.
doInstallParentFirst
execute
(
DeployersImpl
ExecutionWrapper
.java:
1550
47
)
[:2
at org
.
2
jboss
.
0
kernel
.
GA]
plugins.dependency.KernelControllerContextAction.dispatchExecutionWrapper(KernelControllerContextAction.java:125)
at org.jboss.
deployers
kernel
.plugins.
deployers
dependency
.
DeployersImpl
KernelControllerContextAction
.
doInstallParentFirst
dispatchJoinPoint
(
DeployersImpl
KernelControllerContextAction
.java:
1571
72
)
[:2
at org
.
2
jboss
.
0
kernel
.
GA]
plugins.dependency.LifecycleAction.installActionInternal(LifecycleAction.java:202)
at org.jboss.
deployers
kernel
.plugins.
deployers
dependency
.
DeployersImpl
InstallsAwareAction
.
install
installAction
(
DeployersImpl
InstallsAwareAction
.java:
1491
54
)
[:2
at org
.
2
jboss
.
0
kernel
.
GA]
plugins.dependency.InstallsAwareAction.installAction(InstallsAwareAction.java:42)
at org.jboss.dependency.plugins.
AbstractControllerContext
action
.
install
SimpleControllerContextAction.simpleInstallAction
(
AbstractControllerContext
SimpleControllerContextAction
.java:
379
62
)
[
at org.
jboss
-
.
dependency.
jar:2
plugins
.
2
action
.
0
AccessControllerContextAction
.
GA]
install(AccessControllerContextAction.java:71)
at org.jboss.dependency.plugins.
AbstractController
AbstractControllerContextActions
.install(
AbstractController
AbstractControllerContextActions
.java:
2044
51
)
[
at org.
jboss
-
.
dependency.
jar:2
plugins
.
2
AbstractControllerContext
.
0
install(AbstractControllerContext
.
GA]
java:379)
at org.jboss.dependency.plugins.AbstractController.
incrementState
install
(AbstractController.java:
1083
2044
)
[
at org.
jboss
-
.
dependency.
jar:2
plugins
.
2
AbstractController
.
0
incrementState(AbstractController
.
GA]
java:1083)
at org.jboss.dependency.plugins.AbstractController.executeOrIncrementStateDirectly(AbstractController.java:1322)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1246)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1139)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:939)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:654)
[jboss-dependency.jar:2.2.0.GA]
at org.jboss.deployers.plugins.deployers.DeployersImpl.change(DeployersImpl.java:1983)
[:2.2.0.GA]
at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:1076)
[:2.2.0.GA]
at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:679)
[:2.2.0.GA]
at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.process(MainDeployerPlugin.java:106)
[:6.0.0.Final]
at org.jboss.profileservice.dependency.ProfileControllerContext$DelegateDeployer.process(ProfileControllerContext.java:143)
[:0.2.2]
at org.jboss.profileservice.
deployment
plugins
.
hotdeploy.HDScanner$HDScanAction.
deploy
(HDScanner
.
java:240) [:0.2.2] at org.jboss.profileservice.deployment.hotdeploy.HDScanner$HDScanAction.complete(HDScanner.java:192) [:0.2.2] at org.jboss.profileservice.management.TwoPCActionWrapper.doComplete(TwoPCActionWrapper.java:57) [:0.2.2] at org.jboss.profileservice.management.
actions.
AbstractTwoPhaseModificationAction
DeploymentStartAction
.
complete
doPrepare
(
AbstractTwoPhaseModificationAction
DeploymentStartAction
.java:
74
98
)
[:0.2.2]
at org.jboss.profileservice.management.actions.AbstractTwoPhaseModificationAction.prepare(AbstractTwoPhaseModificationAction.java:
95
101
)
[:0.2.2]
at org.jboss.profileservice.management.ModificationSession.prepare(ModificationSession.java:87)
[:0.2.2]
at org.jboss.profileservice.management.AbstractActionController.internalPerfom(AbstractActionController.java:234)
[:0.2.2]
at org.jboss.profileservice.management.AbstractActionController.performWrite(AbstractActionController.java:213)
[:0.2.2]
at org.jboss.profileservice.management.AbstractActionController.perform(AbstractActionController.java:150)
[:0.2.2]
at org.jboss.profileservice.
management
plugins
.
AbstractActionController
deploy
.
perform
AbstractDeployHandler.startDeployments
(
AbstractActionController
AbstractDeployHandler
.java:
135
168
)
[:0.2.2]
at org.jboss.profileservice.
deployment
management
.
hotdeploy
upload
.
HDScanner
remoting
.
scan
DeployHandlerDelegate.startDeployments
(
HDScanner
DeployHandlerDelegate
.java:
146
74
)
[:0.2.2]
at org.jboss.profileservice.
deployment
management
.
hotdeploy
upload
.
HDScanner
remoting
.
run
DeployHandler.invoke
(
HDScanner
DeployHandler
.java:
90
156
)
[:0.2.2]
at
java
org
.
util
jboss
.
concurrent
remoting
.
Executors$RunnableAdapter
ServerInvoker
.
call
invoke
(
Executors
ServerInvoker
.java:
441
967
)
[:1.6.0_22]
at
java
org
.
util
jboss
.
concurrent
remoting
.
FutureTask$Sync
transport
.
innerRunAndReset(FutureTask
socket
.
java:317) [:1
ServerThread
.
6.0_22] at java.util.concurrent.FutureTask.runAndReset
completeInvocation
(
FutureTask
ServerThread
.java:
150
791
)
[:1.6.0_22]
at
java
org
.
util
jboss
.
concurrent
remoting
.
ScheduledThreadPoolExecutor$ScheduledFutureTask
transport
.
access$101(ScheduledThreadPoolExecutor
socket
.
java:98) [:1
ServerThread
.
6.0_22] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic
processInvocation
(
ScheduledThreadPoolExecutor
ServerThread
.java:
180
744
)
[:1.6.0_22]
at
java
org
.
util
jboss
.
concurrent
remoting
.
ScheduledThreadPoolExecutor$ScheduledFutureTask
transport
.
run(ScheduledThreadPoolExecutor
socket
.
java:204) [:1
ServerThread
.
6.0_22] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask
dorun
(
ThreadPoolExecutor
ServerThread
.java:
886
548
)
[:1.6.0_22]
at
java
org
.
util
jboss
.
concurrent
remoting
.
ThreadPoolExecutor$Worker
transport
.
run(ThreadPoolExecutor
socket
.
java:908) [:1
ServerThread
.
6.0_22] at java.lang.Thread.
run(
Thread
ServerThread
.java:
662
234
)
[:1.6.0_22]
Caused by: java.lang.RuntimeException: java.lang.NullPointerException at org.jboss.ejb3.singleton.aop.impl.AOPBasedSingletonContainer.invokeCallback(AOPBasedSingletonContainer.java:
1063
1065
)
[:1.0.0-alpha-28]
at org.jboss.ejb3.EJBContainer.invokePostConstruct(EJBContainer.java:1396)
[:1.7.17]
at org.jboss.ejb3.singleton.aop.impl.AOPBasedSingletonContainer.postConstruct(AOPBasedSingletonContainer.java:
760
762
)
[:1.0.0-alpha-28]
at org.jboss.ejb3.singleton.impl.container.SingletonEJBInstanceManagerImpl.create(SingletonEJBInstanceManagerImpl.java:133)
[:1.0.0-alpha-28]
...
70
79
more Caused by: java.lang.NullPointerException at org.jboss.ejb3.EJBContainer.getApplicationException(EJBContainer.java:509)
[:1.7.17]
at org.jboss.ejb3.singleton.aop.impl.ConstructionInvocationContextAdapter.getApplicationException(ConstructionInvocationContextAdapter.java:62)
[:1.0.0-alpha-28]
at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.handleExceptionInOurTx(CMTTxInterceptor.java:163)
[:0.0.1]
at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:251)
[:0.0.1]
at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.requiresNew(CMTTxInterceptor.java:392)
[:0.0.1]
at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invoke(CMTTxInterceptor.java:211)
[:0.0.1]
at org.jboss.ejb3.tx2.aop.CMTTxInterceptorWrapper.invoke(CMTTxInterceptorWrapper.java:52)
[:0.0.1]
at org.jboss.aop.joinpoint.ConstructionInvocation.invokeNext(ConstructionInvocation.java:80)
[jboss-aop.jar:2.2.1.GA]
at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
[:1.0.0.GA]
at org.jboss.aop.joinpoint.ConstructionInvocation.invokeNext(ConstructionInvocation.java:80)
[jboss-aop.jar:2.2.1.GA]
at org.jboss.ejb3.core.context.CurrentInvocationContextInterceptor.invoke(CurrentInvocationContextInterceptor.java:47)
[:1.7.17]
at org.jboss.aop.joinpoint.ConstructionInvocation.invokeNext(ConstructionInvocation.java:80)
[jboss-aop.jar:2.2.1.GA]
at org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup(InvocationContextInterceptor.java:90)
[:1.1.3]
at org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.
InvocationContextInterceptor_z_setup_221024277
InvocationContextInterceptor_z_setup_259085584
.invoke(
InvocationContextInterceptor_z_setup_221024277
InvocationContextInterceptor_z_setup_259085584
.java)
[:]
at org.jboss.aop.joinpoint.ConstructionInvocation.invokeNext(ConstructionInvocation.java:80)
[jboss-aop.jar:2.2.1.GA]
at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67)
[:1.0.1]
at org.jboss.aop.joinpoint.ConstructionInvocation.invokeNext(ConstructionInvocation.java:80)
[jboss-aop.jar:2.2.1.GA]
at org.jboss.ejb3.singleton.aop.impl.AOPBasedSingletonContainer.invokeCallback(AOPBasedSingletonContainer.java:
1059
1061
)
... 82 more 11.01 03:04:13,868 INFO
[
org.jboss.web.tomcat.service.deployers.TomcatDeployment] (WorkerThread#0[144.202.230.44
:
1
53189]:) deploy, ctxPath=/test 11
.
01 03:04:14,060 INFO [org.jboss.resteasy.cdi.CdiInjectorFactory] (WorkerThread#
0
[144
.
202.230.44:53189]:) Found BeanManager at java:comp/BeanManager 11.01 03:04:14,159 INFO [org.jboss.resteasy.spi.ResteasyDeployment] (WorkerThread#
0
[144.202.230.44:53189]:) Deploying javax.ws.rs.core.Application: class com.ecolane.mpk.rest.RestApplication$Proxy$_$$_WeldClientProxy 11.01 03:04:14,195 INFO [org.jboss.ejb3.proxy.impl.jndiregistrar.JndiSessionRegistrarBase] (WorkerThread#0[144.202.230.44:53189]:) Binding the following Entries in Global JNDI: CallOutSenderBean/local
-
alpha
EJB3.x Default Local Business Interface CallOutSenderBean/local
-
28
com.ecolane.mpk.scheduler.interfaces.CallOutSenderLocal - EJB3.x Local Business Interface 11.01 03:04:14,195 WARN [org.jboss.ejb3.TimerServiceContainer
]
(WorkerThread#0[144.202.230.44:53189]:) EJBTHREE-2193: using deprecated TimerServiceFactory for restoring timers
11
.
01 03:04:14,219 WARN [org
.
jboss
.
73 more
profileservice.management.upload.remoting.DeployHandler] (WorkerThread#0[144.202.230.44:53189]:) Failed to complete command: [start] for deployment: names=[test.war]: org.jboss.deployers.client.spi.IncompleteDeploymentException: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):
DEPLOYMENTS IN ERROR: Deployment "startup-singleton-initiator:topLevelUnit=test.war,unit=test.war,bean=InitializerServiceBean" is in error due to the following reason(s): java.lang.NullPointerException at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1370) at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:1316) at org.jboss.deployers.plugins.main.MainDeployerImpl.checkComplete(MainDeployerImpl.java:968) at org.jboss.system.server.profileservice.deployers.MainDeployerPlugin.checkComplete(MainDeployerPlugin.java:82) at org.jboss.profileservice.dependency.ProfileControllerContext$DelegateDeployer.checkComplete(ProfileControllerContext.java:138) at org.jboss.profileservice.plugins.deploy.actions.DeploymentStartAction.doPrepare(DeploymentStartAction.java:104) at org.jboss.profileservice.management.actions.AbstractTwoPhaseModificationAction.prepare(AbstractTwoPhaseModificationAction.java:101) at org.jboss.profileservice.management.ModificationSession.prepare(ModificationSession.java:87) at org.jboss.profileservice.management.AbstractActionController.internalPerfom(AbstractActionController.java:234) at org.jboss.profileservice.management.AbstractActionController.performWrite(AbstractActionController.java:213) at org.jboss.profileservice.management.AbstractActionController.perform(AbstractActionController.java:150) at org.jboss.profileservice.plugins.deploy.AbstractDeployHandler.startDeployments(AbstractDeployHandler.java:168) at org.jboss.profileservice.management.upload.remoting.DeployHandlerDelegate.startDeployments(DeployHandlerDelegate.java:74) at org.jboss.profileservice.management.upload.remoting.DeployHandler.invoke(DeployHandler.java:156) at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:967) at org.jboss.remoting.transport.socket.ServerThread.completeInvocation(ServerThread.java:791) at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:744) at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:548) at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:234)
{code}
|