Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
5.15.0
-
None
-
Java 8
Description
Start karaf OSGi container, install Camel 2.19.2 and activemq-client feature (activemq-osgi bundle), then the ClassNotFoundException is thrown:
2017-10-10T10:12:30,012 | WARN | pool-46-thread-2 | aries.blueprint.spring.Activator 57 | 291 - org.apache.aries.blueprint.spring - 0.4.0 | Error starting extension: org.apache.activemq.activemq-osgi/5.15.0 java.lang.ClassNotFoundException: org.apache.camel.osgi.CamelNamespaceHandler cannot be found by org.apache.activemq.activemq-osgi_5.15.0 at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:461) [?:?] at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372) [?:?] at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364) [?:?] at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161) [?:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:357) [?:?] at org.eclipse.osgi.internal.framework.EquinoxBundle.loadClass(EquinoxBundle.java:564) [?:?] at org.apache.aries.blueprint.spring.SpringExtension.start(SpringExtension.java:64) [291:org.apache.aries.blueprint.spring:0.4.0] at org.apache.felix.utils.extender.AbstractExtender$1.run(AbstractExtender.java:265) [291:org.apache.aries.blueprint.spring:0.4.0] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?]
From Camel 2.19.x, the camel-spring-dm feature/bundle has been totally removed, that's why the org.apache.camel.osgi.CamelNamespaceHandler couldn't be found anymore.
http\://camel.apache.org/schema/osgi=org.apache.camel.osgi.CamelNamespaceHandler
There is still definition above in the spring.handlers of the activemq-osgi bundle. this may need to be removed or updated from spring.handlers.