[jboss-dev-forums] [Design of POJO Server] - Re: @JMX aspect and aop/mc integration
bstansberry@jboss.com
do-not-reply at jboss.com
Mon Nov 13 16:15:59 EST 2006
Thanks, that worked. To express my gratitude, here's another one ;-)
Problem now is a bean with a non-default constructor -- the value passed to the c'tor is null if the @JMX annotation is applied. E.g.:
<bean name="HAPartition"
| class="org.jboss.ha.framework.server.ClusterPartition">
| <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:service=DefaultPartition", exposedInterface=org.jboss.ha.framework.server.ClusterPartitionMBean.class)</annotation>
|
| .....
|
| </bean>
|
| <bean name="DistributedReplicantManager"
| class="org.jboss.ha.framework.server.DistributedReplicantManagerImpl">
|
| <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss:service=DistributedReplicantManager,partition=DefaultPartition", exposedInterface=org.jboss.ha.framework.server.DistributedReplicantManagerImplMBean.class)</annotation>
|
| <constructor>
| <parameter class="org.jboss.ha.framework.server.ClusterPartition"><inject name="HAPartition"/></parameter>
| </constructor>
|
| </bean>
Results in:
2006-11-13 15:03:23,906 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Instantiated: name=DistributedReplicantManager state=Described
| java.lang.RuntimeException: java.lang.NullPointerException
| at org.jboss.aop.proxy.container.GeneratedAOPProxyFactory.getProxy(GeneratedAOPProxyFactory.java:115)
| at org.jboss.aop.proxy.container.GeneratedAOPProxyFactory.createAdvisedProxy(GeneratedAOPProxyFactory.java:75)
| at org.jboss.aop.proxy.container.GeneratedAOPProxyFactory.createAdvisedProxy(GeneratedAOPProxyFactory.java:39)
| at org.jboss.aop.microcontainer.integration.AOPConstructorJoinpoint.dispatch(AOPConstructorJoinpoint.java:82)
| at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.dispatchJoinPoint(KernelControllerContextAction.java:71)
| at org.jboss.kernel.plugins.dependency.InstantiateAction.installAction(InstantiateAction.java:52)
| at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.install(KernelControllerContextAction.java:96)
| at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
| at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:226)
| at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:709)
| at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:429)
| at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:538)
| at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:472)
| at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:274)
| at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:177)
| at org.jboss.deployers.plugins.deployers.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:67)
| at org.jboss.deployers.plugins.deployers.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:42)
| at org.jboss.deployers.plugins.deployers.helpers.AbstractSimpleRealDeployer.deploy(AbstractSimpleRealDeployer.java:53)
| at org.jboss.deployers.plugins.deployer.AbstractSimpleDeployer.commitDeploy(AbstractSimpleDeployer.java:52)
| at org.jboss.deployers.plugins.deployer.DeployerWrapper.commitDeploy(DeployerWrapper.java:145)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.commitDeploy(MainDeployerImpl.java:440)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.commitDeploy(MainDeployerImpl.java:451)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.process(MainDeployerImpl.java:381)
| at org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileServiceBootstrap.java:366)
| at org.jboss.system.server.profileservice.ProfileServiceBootstrap.bootstrap(ProfileServiceBootstrap.java:246)
| at org.jboss.kernel.plugins.bootstrap.AbstractBootstrap.run(AbstractBootstrap.java:89)
| at org.jboss.system.server.profileservice.ServerImpl.doStart(ServerImpl.java:401)
| at org.jboss.system.server.profileservice.ServerImpl.start(ServerImpl.java:340)
| at org.jboss.Main.boot(Main.java:210)
| at org.jboss.Main$1.run(Main.java:508)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: java.lang.NullPointerException
| at org.jboss.ha.framework.server.DistributedReplicantManagerImpl.<init>(DistributedReplicantManagerImpl.java:114)
| at org.jboss.ha.framework.server.DistributedReplicantManagerImpl.<init>(DistributedReplicantManagerImpl.java:99)
| at AOPContainerProxy$2.<init>(AOPContainerProxy$2.java)
| at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
| at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
| at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
| at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
| at java.lang.Class.newInstance0(Class.java:350)
| at java.lang.Class.newInstance(Class.java:303)
| at org.jboss.aop.proxy.container.GeneratedAOPProxyFactory.instantiateAndConfigureProxy(GeneratedAOPProxyFactory.java:128)
| at org.jboss.aop.proxy.container.GeneratedAOPProxyFactory.getProxy(GeneratedAOPProxyFactory.java:111)
| ... 30 more
NPE is because the HAPartition ref passed in to the constructor is null. If I remove the @JMX annotation from the DistributedReplicantManager bean, it deploys fine.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3985616#3985616
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3985616
More information about the jboss-dev-forums
mailing list