Problem with CXF in a war deployed on Fuse.
navind Jul 25, 2011 12:04 PMI am deploying a war file which is actually exposing a Rest webservice. I am able to successfully deploy and start the application but which i try to access the URL for the exposed interface methods, I get the following error. It seems to be a clash in the CXF versions in the war and fuse. I am using Fuse 4.4.0.
I am placing the war inthe deploy command and running the following command to install
karaf> install war:mvn:group/artifact/version/war?Web-ContextPath=ctx.
I am also attaching my pom file. Please let me know how this can be fixed.
16:12:20,946 | ERROR | use-00-43/deploy | RegisterWebAppVisitorWC | 161 - org.ops4j.pax.web.pax-web-extender-war - 1.0.3 | Registration exception. Skipping.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.apache.cxf.resource.ResourceManager' defined in class path resource : Initialization of bean failed; nested exception is forg.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class or bean with name 'org.apache.cxf.transport.servlet.ServletTransportFactory' defined in class path resource ; nested exception is java.lang.ClassNotFoundException: org.apache.cxf.transport.servlet.ServletTransportFactory not found by org.apache.cxf.bundle
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:480)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.security.AccessController.doPrivileged(Native Method)[:1.6.0_20]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)[228:IsisRestService:0.0.0]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)[228:IsisRestService:0.0.0]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)[228:IsisRestService:0.0.0]
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)[228:IsisRestService:0.0.0]
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)[228:IsisRestService:0.0.0]
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)[228:IsisRestService:0.0.0]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext$1.call(HttpServiceContext.java:168)[159:org.ops4j.pax.web.pax-web-jetty:1.0.3]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext$1.call(HttpServiceContext.java:164)[159:org.ops4j.pax.web.pax-web-jetty:1.0.3]
at org.ops4j.pax.swissbox.core.ContextClassLoaderUtils.doWithClassLoader(ContextClassLoaderUtils.java:60)[159:org.ops4j.pax.web.pax-web-jetty:1.0.3]
at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.addEventListener(HttpServiceContext.java:161)[159:org.ops4j.pax.web.pax-web-jetty:1.0.3]
at org.ops4j.pax.web.service.jetty.internal.JettyServerImpl.addEventListener(JettyServerImpl.java:235)[159:org.ops4j.pax.web.pax-web-jetty:1.0.3]
at org.ops4j.pax.web.service.jetty.internal.ServerControllerImpl$Started.addEventListener(ServerControllerImpl.java:276)[159:org.ops4j.pax.web.pax-web-jetty:1.0.3]
at org.ops4j.pax.web.service.jetty.internal.ServerControllerImpl.addEventListener(ServerControllerImpl.java:127)[159:org.ops4j.pax.web.pax-web-jetty:1.0.3]
at org.ops4j.pax.web.service.internal.HttpServiceStarted.registerEventListener(HttpServiceStarted.java:286)[157:org.ops4j.pax.web.pax-web-runtime:1.0.3]
at org.ops4j.pax.web.service.internal.HttpServiceProxy.registerEventListener(HttpServiceProxy.java:133)[157:org.ops4j.pax.web.pax-web-runtime:1.0.3]
at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorWC.visit(RegisterWebAppVisitorWC.java:276)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.model.WebApp.accept(WebApp.java:561)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.register(WebAppPublisher.java:170)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.serviceChanged(WebAppPublisher.java:155)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.serviceChanged(WebAppPublisher.java:119)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ReplaceableService.setService(ReplaceableService.java:114)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ReplaceableService.access$100(ReplaceableService.java:28)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ReplaceableService$CollectionListener.serviceAdded(ReplaceableService.java:183)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ServiceCollection$Tracker.addingService(ServiceCollection.java:181)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)[karaf.jar:2.2.0-fuse-00-43]
at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)[karaf.jar:2.2.0-fuse-00-43]
at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)[karaf.jar:2.2.0-fuse-00-43]
at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:339)[karaf.jar:2.2.0-fuse-00-43]
at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:273)[karaf.jar:2.2.0-fuse-00-43]
at org.ops4j.pax.swissbox.tracker.ServiceCollection.onStart(ServiceCollection.java:139)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle$Stopped.start(AbstractLifecycle.java:121)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle.start(AbstractLifecycle.java:49)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ReplaceableService.onStart(ReplaceableService.java:146)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle$Stopped.start(AbstractLifecycle.java:121)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle.start(AbstractLifecycle.java:49)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher.publish(WebAppPublisher.java:81)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebXmlObserver.doPublish(WebXmlObserver.java:304)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebXmlObserver.addingEntries(WebXmlObserver.java:153)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.extender.BundleWatcher.register(BundleWatcher.java:186)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.extender.BundleWatcher.access$000(BundleWatcher.java:45)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.extender.BundleWatcher$1.bundleChanged(BundleWatcher.java:127)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:795)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:717)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:597)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3751)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.Felix.startBundle(Felix.java:1781)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:927)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:1183)[7:org.apache.felix.fileinstall:3.1.11.fuse-00-43]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:1161)[7:org.apache.felix.fileinstall:3.1.11.fuse-00-43]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:466)[7:org.apache.felix.fileinstall:3.1.11.fuse-00-43]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:271)[7:org.apache.felix.fileinstall:3.1.11.fuse-00-43]
Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class for bean with name 'org.apache.cxf.transport.servlet.ServletTransportFactory' defined in class path resource ; nested exception is java.lang.ClassNotFoundException: org.apache.cxf.transport.servlet.ServletTransportFactory not found by org.apache.cxf.bundle
at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1141)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:524)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1177)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:222)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:303)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeansOfType(DefaultListableBeanFactory.java:297)[228:IsisRestService:0.0.0]
at org.springframework.context.support.AbstractApplicationContext.getBeansOfType(AbstractApplicationContext.java:941)[228:IsisRestService:0.0.0]
at org.apache.cxf.bus.spring.Jsr250BeanPostProcessor.postProcessAfterInitialization(Jsr250BeanPostProcessor.java:76)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:361)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1344)[228:IsisRestService:0.0.0]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)[228:IsisRestService:0.0.0]
... 59 more
Caused by: java.lang.ClassNotFoundException: org.apache.cxf.transport.servlet.ServletTransportFactory not found by org.apache.cxf.bundle
at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)
at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)
at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1806)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)[:1.6.0_20]
at org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:670)
at org.apache.felix.framework.resolver.WireImpl.getClass(WireImpl.java:102)
at org.apache.felix.framework.ModuleImpl.searchImports(ModuleImpl.java:1425)
at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:747)
at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)
at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1806)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)[:1.6.0_20]
at org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:670)
at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1613)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:909)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.ops4j.pax.swissbox.core.BundleClassLoader.findClass(BundleClassLoader.java:176)
at org.ops4j.pax.swissbox.core.BundleClassLoader.loadClass(BundleClassLoader.java:194)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)[:1.6.0_20]
at org.springframework.util.ClassUtils.forName(ClassUtils.java:211)
at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:385)
at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1138)[228:IsisRestService:0.0.0]
... 69 more
16:12:20,962 | ERROR | use-00-43/deploy | RegisterWebAppVisitorWC | 161 - org.ops4j.pax.web.pax-web-extender-war - 1.0.3 | Registration exception. Skipping.
java.lang.NoClassDefFoundError: org/springframework/web/context/WebApplicationContext
at java.lang.Class.getDeclaredConstructors0(Native Method)[:1.6.0_20]
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)[:1.6.0_20]
at java.lang.Class.getConstructor0(Class.java:2699)[:1.6.0_20]
at java.lang.Class.newInstance0(Class.java:326)[:1.6.0_20]
at java.lang.Class.newInstance(Class.java:308)[:1.6.0_20]
at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorHS.newInstance(RegisterWebAppVisitorHS.java:221)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorWC.visit(RegisterWebAppVisitorWC.java:200)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.model.WebApp.accept(WebApp.java:583)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.register(WebAppPublisher.java:170)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.serviceChanged(WebAppPublisher.java:155)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.serviceChanged(WebAppPublisher.java:119)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ReplaceableService.setService(ReplaceableService.java:114)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ReplaceableService.access$100(ReplaceableService.java:28)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ReplaceableService$CollectionListener.serviceAdded(ReplaceableService.java:183)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ServiceCollection$Tracker.addingService(ServiceCollection.java:181)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)[karaf.jar:2.2.0-fuse-00-43]
at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)[karaf.jar:2.2.0-fuse-00-43]
at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)[karaf.jar:2.2.0-fuse-00-43]
at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:339)[karaf.jar:2.2.0-fuse-00-43]
at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:273)[karaf.jar:2.2.0-fuse-00-43]
at org.ops4j.pax.swissbox.tracker.ServiceCollection.onStart(ServiceCollection.java:139)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle$Stopped.start(AbstractLifecycle.java:121)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle.start(AbstractLifecycle.java:49)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.tracker.ReplaceableService.onStart(ReplaceableService.java:146)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle$Stopped.start(AbstractLifecycle.java:121)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle.start(AbstractLifecycle.java:49)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebAppPublisher.publish(WebAppPublisher.java:81)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebXmlObserver.doPublish(WebXmlObserver.java:304)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.web.extender.war.internal.WebXmlObserver.addingEntries(WebXmlObserver.java:153)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.extender.BundleWatcher.register(BundleWatcher.java:186)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.extender.BundleWatcher.access$000(BundleWatcher.java:45)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.ops4j.pax.swissbox.extender.BundleWatcher$1.bundleChanged(BundleWatcher.java:127)[161:org.ops4j.pax.web.pax-web-extender-war:1.0.3]
at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:795)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:717)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:597)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3751)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.Felix.startBundle(Felix.java:1781)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:927)[org.apache.felix.framework-3.0.9-fuse-00-43.jar:]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:1183)[7:org.apache.felix.fileinstall:3.1.11.fuse-00-43]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:1161)[7:org.apache.felix.fileinstall:3.1.11.fuse-00-43]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:466)[7:org.apache.felix.fileinstall:3.1.11.fuse-00-43]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:271)[7:org.apache.felix.fileinstall:3.1.11.fuse-00-43]
Caused by: java.lang.ClassNotFoundException: org.springframework.web.context.WebApplicationContext not found by org.apache.cxf.bundle
at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)
at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)
at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1806)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)[:1.6.0_20]
... 42 more
Edited by: navind on Jul 25, 2011 4:04 PM
-
pom.xml 2.6 KB