Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Abandoned
-
5.8.0
-
None
-
Apache Karaf 2.3.0
Description
ActiveMQ 5.8-SNAPSHOT (compiled from trunk) is unable to start blueprint broker:
karaf@root> features:addurl mvn:org.apache.activemq/activemq-karaf/5.8-SNAPSHOT/xml/features karaf@root> features:install activemq activemq-blueprint karaf@root> activemq:create-broker -t blueprint Creating file: @|green /usr/java/apache-karaf-2.3.0/deploy/localhost-broker.xml| Default ActiveMQ Broker (localhost) configuration file created at: /usr/java/apache-karaf-2.3.0/deploy/localhost-broker.xml Please review the configuration and modify to suite your needs. 0 karaf@root> la | grep localhost-broker [ 105] [Active ] [Failure ] [ 80] localhost-broker.xml (0.0.0)
Blueprint component doesn't start due to the NoClassDefFoundError:
2012-11-02 16:26:24,702 | ERROR | rint Extender: 3 | BlueprintContainerImpl | container.BlueprintContainerImpl 375 | 7 - org.apache.aries.blueprint.core - 1.0.1 | Unable to start blueprint container for bundle localhost-broker.xml org.osgi.service.blueprint.container.ComponentDefinitionException: Error when instanciating bean .component-2 of class class org.apache.activemq.xbean.XBeanBrokerService at org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:333)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[7:org.apache.aries.blueprint.core:1.0.1] at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)[:1.6.0_37] at java.util.concurrent.FutureTask.run(FutureTask.java:138)[:1.6.0_37] at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:646)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:353)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:252)[7:org.apache.aries.blueprint.core:1.0.1] at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:48)[7:org.apache.aries.blueprint.core:1.0.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)[:1.6.0_37] at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)[:1.6.0_37] at java.util.concurrent.FutureTask.run(FutureTask.java:138)[:1.6.0_37] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)[:1.6.0_37] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:206)[:1.6.0_37] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[:1.6.0_37] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[:1.6.0_37] at java.lang.Thread.run(Thread.java:662)[:1.6.0_37] Caused by: java.lang.NoClassDefFoundError: org/springframework/beans/BeansException at org.apache.activemq.xbean.XBeanBrokerService.<init>(XBeanBrokerService.java:47) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)[:1.6.0_37] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)[:1.6.0_37] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)[:1.6.0_37] at java.lang.reflect.Constructor.newInstance(Constructor.java:513)[:1.6.0_37] at org.apache.aries.blueprint.utils.ReflectionUtils.newInstance(ReflectionUtils.java:329) at org.apache.aries.blueprint.container.BeanRecipe.newInstance(BeanRecipe.java:962) at org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:331) ... 20 more Caused by: java.lang.ClassNotFoundException: org.springframework.beans.BeansException not found by org.apache.activemq.activemq-core [99] at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1460) at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72) at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843) at java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_37] ... 28 more
This problem can be solved by installing activemq-spring feature, but it seems to be overkill to have full Spring stack to run Blueprint ActiveMQ broker.