CXF-DOSGi in JBoss OSGi / AS7
by David Bosschaert
I spent a little bit of time trying to get the CXF-DOSGi multi-bundle
distro to work in AS7 and I hit a few issues with this. Before filing
individual bugs for these I'd like to understand a little better what's
going wrong here.
I'm working off the multi-bundle distro I built from CXF-DOSGi trunk
with an added deployment script that I'm working on. The distro contains
a fairly large number of bundles, mostly dependencies.
The distro is here:
http://dl.dropbox.com/u/1151396/cxf-dosgi-as7/cxf-dosgi-ri-multibundle-di...
and the script I was using is in the conf/jboss-deploy.sh directory.
These are the issues that I ran into when trying to deploy this:
* The pax-web-spi dependency needs javax.servlet version [2.3, 3.0).
This is provided by the geronimo-servlet-3.0_spec bundle but apparently
eclipsed by the javax.servlet.api capability. Can they not live
side-by-side? I originally thought this was a different problem which I
filed as JBOSGI-584.
* A number of bundles cause a DuplicateServiceException [1] when
deployed. The first such bundle is
org.apache.servicemix.specs.stax-api-1.0-1.9.0.jar. I'm not sure whether
this is a fatal exception or not, but it happens to a number of bundles.
* The deployment of the cxf-bundle-minimal-2.5.4.jar causes a NPE and
fails to start [2].
Any ideas? Thanks,
David
[1] 15:20:00,626 WARN [org.jboss.osgi.framework] (MSC service thread
1-2) JBOSGI011015: Error while firing bundle event RESOLVED for:
org.apache.servicemix.specs.stax-api-1.0:1.9.0:
org.jboss.msc.service.DuplicateServiceException: Service
jboss.module.spec.service."deployment.org.apache.servicemix.specs.stax-api-1.0-1.9.0.jar".main
is already registered
at
org.jboss.msc.service.ServiceRegistrationImpl.setInstance(ServiceRegistrationImpl.java:154)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceControllerImpl.startInstallation(ServiceControllerImpl.java:227)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceContainerImpl.install(ServiceContainerImpl.java:560)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceTargetImpl.install(ServiceTargetImpl.java:201)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceControllerImpl$ChildServiceTarget.install(ServiceControllerImpl.java:2228)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceBuilderImpl.install(ServiceBuilderImpl.java:307)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.as.osgi.service.ModuleLoaderIntegration.addModuleSpec(ModuleLoaderIntegration.java:187)
at
org.jboss.osgi.framework.internal.ModuleManagerPlugin.createHostModule(ModuleManagerPlugin.java:356)
at
org.jboss.osgi.framework.internal.ModuleManagerPlugin.addModule(ModuleManagerPlugin.java:234)
at
org.jboss.osgi.framework.internal.ResolverPlugin.addModules(ResolverPlugin.java:293)
at
org.jboss.osgi.framework.internal.ResolverPlugin.applyResolverResults(ResolverPlugin.java:241)
at
org.jboss.osgi.framework.internal.ResolverPlugin.resolveAndApply(ResolverPlugin.java:138)
at
org.jboss.osgi.framework.internal.ResolverPlugin.resolveAndApply(ResolverPlugin.java:149)
at
org.jboss.osgi.framework.internal.AbstractBundleState.ensureResolved(AbstractBundleState.java:575)
at
org.jboss.osgi.framework.internal.HostBundleRevision.findEntries(HostBundleRevision.java:120)
at
org.jboss.osgi.framework.internal.AbstractBundleState.findEntries(AbstractBundleState.java:467)
at
org.apache.servicemix.specs.locator.Activator.register(Activator.java:97)
at
org.apache.servicemix.specs.locator.Activator.bundleChanged(Activator.java:88)
at
org.jboss.osgi.framework.internal.FrameworkEventsPlugin.fireBundleEvent(FrameworkEventsPlugin.java:373)
at
org.jboss.osgi.framework.internal.AbstractBundleState.fireBundleEvent(AbstractBundleState.java:222)
at
org.jboss.osgi.framework.internal.AbstractBundleState.changeState(AbstractBundleState.java:216)
at
org.jboss.osgi.framework.internal.AbstractBundleState.changeState(AbstractBundleState.java:198)
at
org.jboss.osgi.framework.internal.ResolverPlugin.setBundleToResolved(ResolverPlugin.java:318)
at
org.jboss.osgi.framework.internal.ResolverPlugin.applyResolverResults(ResolverPlugin.java:247)
at
org.jboss.osgi.framework.internal.ResolverPlugin.resolveAndApply(ResolverPlugin.java:138)
at
org.jboss.as.osgi.deployment.BundleResolveProcessor.resolveBundle(BundleResolveProcessor.java:78)
at
org.jboss.as.osgi.deployment.BundleResolveProcessor.deploy(BundleResolveProcessor.java:68)
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:116)
[jboss-as-server-7.2.0.Alpha1-SNAPSHOT.jar:7.2.0.Alpha1-SNAPSHOT]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[classes.jar:1.6.0_33]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[classes.jar:1.6.0_33]
at java.lang.Thread.run(Thread.java:680) [classes.jar:1.6.0_33]
[2] 15:22:55,791 ERROR [org.jboss.msc.service.fail] (MSC service thread
1-5) MSC00001: Failed to start service
jboss.deployment.unit."cxf-bundle-minimal-2.5.4.jar".POST_MODULE:
org.jboss.msc.service.StartException in service
jboss.deployment.unit."cxf-bundle-minimal-2.5.4.jar".POST_MODULE:
JBAS018733: Failed to process phase POST_MODULE of deployment
"cxf-bundle-minimal-2.5.4.jar"
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:123)
[jboss-as-server-7.2.0.Alpha1-SNAPSHOT.jar:7.2.0.Alpha1-SNAPSHOT]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
[jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[classes.jar:1.6.0_33]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[classes.jar:1.6.0_33]
at java.lang.Thread.run(Thread.java:680) [classes.jar:1.6.0_33]
Caused by: java.lang.NullPointerException
at
org.jboss.as.ee.component.deployers.ResourceInjectionAnnotationParsingProcessor.isEnvEntryType(ResourceInjectionAnnotationParsingProcessor.java:295)
at
org.jboss.as.ee.component.deployers.ResourceInjectionAnnotationParsingProcessor.process(ResourceInjectionAnnotationParsingProcessor.java:226)
at
org.jboss.as.ee.component.deployers.ResourceInjectionAnnotationParsingProcessor.processMethodResource(ResourceInjectionAnnotationParsingProcessor.java:196)
at
org.jboss.as.ee.component.deployers.ResourceInjectionAnnotationParsingProcessor.deploy(ResourceInjectionAnnotationParsingProcessor.java:149)
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:116)
[jboss-as-server-7.2.0.Alpha1-SNAPSHOT.jar:7.2.0.Alpha1-SNAPSHOT]
... 5 more
12 years, 4 months