[jboss-dev-forums] [Design of JCA on JBoss] - Re: JBAS-1437 RARMetaDataRepository
weston.price@jboss.com
do-not-reply at jboss.com
Sun Mar 18 22:13:45 EDT 2007
I am running into a problem using the JAXB deployer from the MC (2.0.0Beta3). For some reason, the deployer can't be initialized:
|
| 21:38:50,428 ERROR [AbstractKernelController] Error installing to Described: name=ManagedConnectionFactoryParserDeployer state=PreInstall
| java.lang.NoClassDefFoundError: Ljavax/xml/bind/JAXBContext;
| at java.lang.Class.getDeclaredFields0(Native Method)
| at java.lang.Class.privateGetDeclaredFields(Class.java:2232)
| at java.lang.Class.getDeclaredFields(Class.java:1715)
| at org.jboss.aop.ClassContainer$1.run(ClassContainer.java:93)
| at java.security.AccessController.doPrivileged(Native Method)
| at org.jboss.aop.ClassContainer.populateFieldTable(ClassContainer.java:89)
| at org.jboss.aop.ClassContainer.populateFieldTable(ClassContainer.java:84)
| at org.jboss.aop.ClassContainer.createFieldTable(ClassContainer.java:114)
| at org.jboss.aop.ClassContainer.initializeMetadata(ClassContainer.java:72)
| at org.jboss.aop.ClassContainer.initializeClassContainer(ClassContainer.java:59)
| at org.jboss.aop.proxy.container.ClassProxyContainer.initialise(ClassProxyContainer.java:174)
| at org.jboss.aop.proxy.container.ContainerCache.createContainer(ContainerCache.java:183)
| at org.jboss.aop.proxy.container.ContainerCache.createAndCacheContainer(ContainerCache.java:171)
| at org.jboss.aop.proxy.container.ContainerCache.initClassContainer(ContainerCache.java:159)
| at org.jboss.aop.proxy.container.ContainerCache.initialise(ContainerCache.java:92)
| at org.jboss.aop.proxy.container.ContainerCache.initialise(ContainerCache.java:72)
| at org.jboss.aop.microcontainer.integration.AOPDependencyBuilder.getDependencies(AOPDependencyBuilder.java:91)
| at org.jboss.classadapter.plugins.BasicClassAdapter.getDependencies(BasicClassAdapter.java:79)
| at org.jboss.beans.info.plugins.AbstractBeanInfo.getDependencies(AbstractBeanInfo.java:210)
| at org.jboss.kernel.plugins.dependency.DescribeAction.installActionInternal(DescribeAction.java:54)
| at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.installAction(KernelControllerContextAction.java:197)
| at org.jboss.kernel.plugins.dependency.KernelControllerContextAction.install(KernelControllerContextAction.java:136)
| at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
| at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:233)
| at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:724)
| at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:445)
| at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:555)
| at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:489)
| at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:289)
| at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:192)
| 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:56)
| at org.jboss.deployers.plugins.deployer.AbstractSimpleDeployer.commitDeploy(AbstractSimpleDeployer.java:52)
| at org.jboss.deployers.plugins.deployer.DeployerWrapper.commitDeploy(DeployerWrapper.java:170)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.commitDeploy(MainDeployerImpl.java:592)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.commitDeploy(MainDeployerImpl.java:603)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.process(MainDeployerImpl.java:476)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.process(MainDeployerImpl.java:406)
| 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:585)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeTarget(MethodInvocation.java:121)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:110)
| at org.jboss.profileservice.aop.MainDeployerAspect.process(MainDeployerAspect.java:53)
| at org.jboss.aop.advice.org.jboss.profileservice.aop.MainDeployerAspect_z_process_10062600.invoke(MainDeployerAspect_z_process_10062600.java)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at AOPContainerProxy$0.process(AOPContainerProxy$0.java)
| at org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileServiceBootstrap.java:364)
| at org.jboss.system.server.profileservice.ProfileServiceBootstrap.bootstrap(ProfileServiceBootstrap.java:247)
| at org.jboss.kernel.plugins.bootstrap.AbstractBootstrap.run(AbstractBootstrap.java:89)
| at org.jboss.system.server.profileservice.ServerImpl.doStart(ServerImpl.java:403)
| at org.jboss.system.server.profileservice.ServerImpl.start(ServerImpl.java:342)
| at org.jboss.Main.boot(Main.java:210)
| at org.jboss.Main$1.run(Main.java:522)
| at java.lang.Thread.run(Thread.java:613)
|
|
I had initially thought that it was the version of JAXB I had compiled against, but this does not appear to be the case as I have tried multiple versions to no avail.
I then thought it might be simply that the classes cannot be found but I tried putting them in the usual places (ie server/lib etc) also to no avail.
Also, currently the JAXB deployer only allows for a single type in the instantiation of the JAXBContext
|
| if (properties != null)
| context = JAXBContext.newInstance(new Class[] { getDeploymentType() }, properties);
| else
| context = JAXBContext.newInstance(getDeploymentType());
|
I think this should be extended to allow for passing in multiple types. I have a need for this as I use inheritance in my metadata and JAXB needs to be aware of all my types. It's either this, or force an upgrade to include to @XmlSeeAlso annotation that allows those types to be specified in the metadata itself.
Note this issue is not with the JAXB.newInstance method but rather what the JAXBDeployer knows about (ie only discovered via the getDeploymentType() method).
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4029183#4029183
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4029183
More information about the jboss-dev-forums
mailing list