Question

I have read a lot, tried a lot but I can not solve this thing. The problem is, I am trying to deploy war file in Service mix, but it prompts for the following error:

04:32:26,792 | DEBUG | mix-4.5.1/deploy | HttpServiceContext
| 117 - org.ops4j.pax.web.pax-web-jetty - 1.0.12.1 | found resource: null 04:32:26,792 | DEBUG | mix-4.5.1/deploy | AbstractLifeCycle
| 112 - org.eclipse.jetty.util - 7.5.4.v20111024 | STARTED org.ops4j.pax.web.service.spi.model.ServletModel-13 04:32:26,793 | ERROR | mix-4.5.1/deploy | RegisterWebAppVisitorWC | 175 - org.ops4j.pax.web.pax-web-extender-war - 1.0.12.1 | Registration exception. Skipping. java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener not found by IGE_INTEGRATION [226] at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1807)[org.apache.felix.framework-3.2.2.jar:] at java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_45] at org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:670)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1654)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:909)[org.apache.felix.framework-3.2.2.jar:] at org.ops4j.pax.swissbox.core.BundleClassLoader.findClass(BundleClassLoader.java:176)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.core.BundleClassLoader.loadClass(BundleClassLoader.java:194)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_45] at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorHS.newInstance(RegisterWebAppVisitorHS.java:221)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorWC.visit(RegisterWebAppVisitorWC.java:269)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.model.WebApp.accept(WebApp.java:561)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.register(WebAppPublisher.java:170)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.serviceChanged(WebAppPublisher.java:155)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.serviceChanged(WebAppPublisher.java:119)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ReplaceableService.setService(ReplaceableService.java:114)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ReplaceableService.access$100(ReplaceableService.java:28)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ReplaceableService$CollectionListener.serviceAdded(ReplaceableService.java:183)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ServiceCollection$Tracker.addingService(ServiceCollection.java:181)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)[karaf.jar:2.2.10] at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)[karaf.jar:2.2.10] at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)[karaf.jar:2.2.10] at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:339)[karaf.jar:2.2.10] at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:273)[karaf.jar:2.2.10] at org.ops4j.pax.swissbox.tracker.ServiceCollection.onStart(ServiceCollection.java:139)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle$Stopped.start(AbstractLifecycle.java:121)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle.start(AbstractLifecycle.java:49)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ReplaceableService.onStart(ReplaceableService.java:146)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle$Stopped.start(AbstractLifecycle.java:121)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle.start(AbstractLifecycle.java:49)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebAppPublisher.publish(WebAppPublisher.java:81)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebXmlObserver.doPublish(WebXmlObserver.java:304)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebXmlObserver.addingEntries(WebXmlObserver.java:153)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.extender.BundleWatcher.register(BundleWatcher.java:186)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.extender.BundleWatcher.access$000(BundleWatcher.java:45)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.extender.BundleWatcher$1.bundleChanged(BundleWatcher.java:127)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:807)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:729)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:610)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3879)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.Felix.startBundle(Felix.java:1850)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:927)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1244)[7:org.apache.felix.fileinstall:3.2.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1216)[7:org.apache.felix.fileinstall:3.2.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:505)[7:org.apache.felix.fileinstall:3.2.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[7:org.apache.felix.fileinstall:3.2.4] 04:32:26,794 | ERROR | mix-4.5.1/deploy | RegisterWebAppVisitorWC
| 175 - org.ops4j.pax.web.pax-web-extender-war - 1.0.12.1 | Registration exception. Skipping. java.lang.ClassNotFoundException: org.restlet.ext.spring.SpringServerServlet not found by IGE_INTEGRATION [226] at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1807)[org.apache.felix.framework-3.2.2.jar:] at java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_45] at org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:670)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1654)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:909)[org.apache.felix.framework-3.2.2.jar:] at org.ops4j.pax.swissbox.core.BundleClassLoader.findClass(BundleClassLoader.java:176)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.core.BundleClassLoader.loadClass(BundleClassLoader.java:194)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_45] at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorHS.newInstance(RegisterWebAppVisitorHS.java:221)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorWC.visit(RegisterWebAppVisitorWC.java:200)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.model.WebApp.accept(WebApp.java:583)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.register(WebAppPublisher.java:170)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.serviceChanged(WebAppPublisher.java:155)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$HttpServiceListener.serviceChanged(WebAppPublisher.java:119)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ReplaceableService.setService(ReplaceableService.java:114)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ReplaceableService.access$100(ReplaceableService.java:28)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ReplaceableService$CollectionListener.serviceAdded(ReplaceableService.java:183)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ServiceCollection$Tracker.addingService(ServiceCollection.java:181)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)[karaf.jar:2.2.10] at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)[karaf.jar:2.2.10] at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)[karaf.jar:2.2.10] at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:339)[karaf.jar:2.2.10] at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:273)[karaf.jar:2.2.10] at org.ops4j.pax.swissbox.tracker.ServiceCollection.onStart(ServiceCollection.java:139)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle$Stopped.start(AbstractLifecycle.java:121)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle.start(AbstractLifecycle.java:49)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.tracker.ReplaceableService.onStart(ReplaceableService.java:146)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle$Stopped.start(AbstractLifecycle.java:121)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.lifecycle.AbstractLifecycle.start(AbstractLifecycle.java:49)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebAppPublisher.publish(WebAppPublisher.java:81)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebXmlObserver.doPublish(WebXmlObserver.java:304)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.web.extender.war.internal.WebXmlObserver.addingEntries(WebXmlObserver.java:153)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.extender.BundleWatcher.register(BundleWatcher.java:186)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.extender.BundleWatcher.access$000(BundleWatcher.java:45)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.ops4j.pax.swissbox.extender.BundleWatcher$1.bundleChanged(BundleWatcher.java:127)[175:org.ops4j.pax.web.pax-web-extender-war:1.0.12.1] at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:807)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:729)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:610)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3879)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.Felix.startBundle(Felix.java:1850)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:927)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1244)[7:org.apache.felix.fileinstall:3.2.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1216)[7:org.apache.felix.fileinstall:3.2.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:505)[7:org.apache.felix.fileinstall:3.2.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[7:org.apache.felix.fileinstall:3.2.4]

After this when I hit jsp file, that goes fine, I can see that jsp file. But when I try to call Rest URL, it prompts an error that:

Error 405 HTTP method POST is not supported by this URL

But locally when I run the application by jetty:run everything works fine.

I have posted this question here as well:

Apache Karaf, WAR Deployment Issue

Was it helpful?

Solution

This:

RegisterWebAppVisitorWC | 175 - org.ops4j.pax.web.pax-web-extender-war - 1.0.12.1 | Registration exception. Skipping. java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener not found by IGE_INTEGRATION [226] at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)[org.apache.felix.framework-3.2.2.jar:] at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)[org.apache.felix.framework-3.2.2.jar:] at 

tells me that your missing some spring jars, how is your WAR built, as a std. WAR or as a WAB (War with OSGi Manifest). If it's the second do you have all required imports resolved? If it's the first do you have all required jars included in your war and at the right spot WEB-INF/lib. Does your WAR contain some "not allowed" jars in it like servlet.jar, etc...

EDIT: Ok, your war does contain all jars in the lib folder but you only define the WEB-INF/classes as part of your Bundle-ClassPath, that's what you're missing. You need to define the complete classpath including the jars in your lib folder. So your Bundle-ClassPath needs to look like:

Bundle-ClassPath: WEB-INF/classes, WEB-INF/lib/spring-core.jar, ...
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top