You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@karaf.apache.org by Christopher Arnold <ca...@ptc.com> on 2014/01/23 15:07:19 UTC

Fwd: Deploy issues in Karaf/Blueprint

I'm attempting to hot deploy a Camel route using the ActiveMQComponent
into Karaf via the deploy folder using a blueprint xml file but I'm
running into dependency issues.  When Karaf attempts to start the
created bundle I see this error:

2014-01-22 13:41:51,092 | ERROR | -SNAPSHOT/deploy | BlueprintContainerImpl           | 4 - org.apache.aries.blueprint.core - 1.3.0 | Unable to start blueprint container for bundle blueprint.xml
org.osgi.service.blueprint.container.ComponentDefinitionException: Unable to instantiate components
	at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:685)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:378)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0]
	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0]
	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0]
	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0]
	at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0]
	at org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1247)[16:org.apache.felix.fileinstall:3.2.6]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1219)[16:org.apache.felix.fileinstall:3.2.6]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1208)[16:org.apache.felix.fileinstall:3.2.6]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:503)[16:org.apache.felix.fileinstall:3.2.6]
	at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[16:org.apache.felix.fileinstall:3.2.6]
Caused by: java.lang.NoClassDefFoundError: org/apache/camel/spi/EndpointCompleter
	at java.lang.ClassLoader.defineClass1(Native Method)[:1.7.0_45]
	at java.lang.ClassLoader.defineClass(ClassLoader.java:800)[:1.7.0_45]
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2279)
	at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501)
	at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
	at org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1374)
	at org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1553)
	at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1484)
	at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
	at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.aries.blueprint.container.BlueprintContainerImpl.loadClass(BlueprintContainerImpl.java:432)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintRepository.loadClass(BlueprintRepository.java:410)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.GenericType.parse(GenericType.java:113)
	at org.apache.aries.blueprint.di.AbstractRecipe.doLoadType(AbstractRecipe.java:168)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.di.AbstractRecipe.loadType(AbstractRecipe.java:161)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BeanRecipe.loadClass(BeanRecipe.java:249)
	at org.apache.aries.blueprint.container.BeanRecipe.getType(BeanRecipe.java:895)
	at org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:323)
	at org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806)
	at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)
	at org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_45]
	at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[4:org.apache.aries.blueprint.core:1.3.0]
	at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:681)[4:org.apache.aries.blueprint.core:1.3.0]
	... 21 more
Caused by: java.lang.ClassNotFoundException: org.apache.camel.spi.EndpointCompleter not found by org.apache.activemq.activemq-web-console [175]
	at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)[org.apache.felix.framework-4.2.1.jar:]
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)[org.apache.felix.framework-4.2.1.jar:]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
	... 52 more

I've narrowed it down to instantiating the ActiveMQComponent bean as the
cause of the error.  Also, I've verified that the camel-core bundle is
present, active, and contains org.apache.camel.spi.EndpointCompleter.
Any idea why it can't find the class?

Version Detail: ActiveMQ 5.9.0, Camel 2.12.2, Karaf 3.0.0
blueprint.xml for reference:

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:camel="http://camel.apache.org/schema/blueprint"
     xsi:schemaLocation="
         http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
         http://camel.apache.org/schema/blueprint http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
     ">

   <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
     <property name="brokerURL" value="tcp://localhost:61616"/>
   </bean>

   <bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">
     <property name="connectionFactory" ref="connectionFactory"/>
   </bean>

   <bean id="helloBean" class="com.company.test.integ.beans.HelloBean"/>

   <camelContext xmlns="http://camel.apache.org/schema/blueprint" id="camel">
     <route>
       <from uri="cxfrs://http://0.0.0.0:8080/rest?resourceClasses=com.company.test.integ.rest.HelloService&amp;bindingStyle=SimpleConsumer"/>
       <setExchangePattern pattern="InOut"/>
       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
       <to uri="activemq:queue:test"/>
     </route>
     <route>
       <from uri="activemq:queue:test"/>
       <setExchangePattern pattern="InOut"/>
       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
       <choice>
         <when>
           <simple>${header.operationName} == 'hello'</simple>
           <to uri="bean:helloBean?method=hello"/>
         </when>
         <otherwise>
           <log message="Bad operationName: ${header.operationName}"/>
         </otherwise>
       </choice>
       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
     </route>
   </camelContext>

</blueprint>

Thanks,
-Chris




Re: Fwd: Deploy issues in Karaf/Blueprint

Posted by Christopher Arnold <ca...@ptc.com>.
Thanks for taking a look.  Here's the output of feature:list:

karaf@root()> feature:list -i
Name                     | Version          | Installed | Repository              | Description
--------------------------------------------------------------------------------------------------------------------------------------
standard                 | 3.0.0            | x         | standard-3.0.0          | Karaf standard feature
config                   | 3.0.0            | x         | standard-3.0.0          | Provide OSGi ConfigAdmin support
region                   | 3.0.0            | x         | standard-3.0.0          | Provide Region Support
package                  | 3.0.0            | x         | standard-3.0.0          | Package commands and mbeans
http                     | 3.0.0            | x         | standard-3.0.0          | Implementation of the OSGI HTTP Service
http-whiteboard          | 3.0.0            | x         | standard-3.0.0          | Provide HTTP Whiteboard pattern support
war                      | 3.0.0            | x         | standard-3.0.0          | Turn Karaf as a full WebContainer
jetty                    | 8.1.9.v20130131  | x         | standard-3.0.0          |
kar                      | 3.0.0            | x         | standard-3.0.0          | Provide KAR (KARaf archive) support
webconsole               | 3.0.0            | x         | standard-3.0.0          | Base support of the Karaf WebConsole
ssh                      | 3.0.0            | x         | standard-3.0.0          | Provide a SSHd server on Karaf
management               | 3.0.0            | x         | standard-3.0.0          | Provide a JMX MBeanServer and a set of MBeans in K
eventadmin               | 3.0.0            | x         | standard-3.0.0          | OSGi Event Admin service specification for event-b
activemq-client          | 5.9.0            | x         | activemq-5.9.0          | ActiveMQ client libraries
activemq                 | 5.9.0            | x         | activemq-5.9.0          | ActiveMQ broker libraries
activemq-camel           | 5.9.0            | x         | activemq-5.9.0          |
activemq-web-console     | 5.9.0            | x         | activemq-5.9.0          |
xml-specs-api            | 2.2.0            | x         | camel-2.12.2            |
camel                    | 2.12.2           | x         | camel-2.12.2            |
camel-core               | 2.12.2           | x         | camel-2.12.2            |
camel-spring             | 2.12.2           | x         | camel-2.12.2            |
camel-blueprint          | 2.12.2           | x         | camel-2.12.2            |
camel-cxf                | 2.12.2           | x         | camel-2.12.2            |
camel-jms                | 2.12.2           | x         | camel-2.12.2            |
pax-jetty                | 8.1.14.v20131031 | x         | org.ops4j.pax.web-3.0.5 | Provide Jetty engine support
pax-http                 | 3.0.5            | x         | org.ops4j.pax.web-3.0.5 | Implementation of the OSGI HTTP Service
pax-http-whiteboard      | 3.0.5            | x         | org.ops4j.pax.web-3.0.5 | Provide HTTP Whiteboard pattern support
pax-war                  | 3.0.5            | x         | org.ops4j.pax.web-3.0.5 | Provide support of a full WebContainer
cxf-specs                | 2.7.7            | x         | cxf-2.7.7               |
cxf-jaxb                 | 2.7.7            | x         | cxf-2.7.7               |
wss4j                    | 1.6.12           | x         | cxf-2.7.7               |
cxf-core                 | 2.7.7            | x         | cxf-2.7.7               |
cxf-ws-policy            | 2.7.7            | x         | cxf-2.7.7               |
cxf-ws-addr              | 2.7.7            | x         | cxf-2.7.7               |
cxf-ws-rm                | 2.7.7            | x         | cxf-2.7.7               |
cxf-ws-mex               | 2.7.7            | x         | cxf-2.7.7               |
cxf-ws-security          | 2.7.7            | x         | cxf-2.7.7               |
cxf-http                 | 2.7.7            | x         | cxf-2.7.7               |
cxf-http-jetty           | 2.7.7            | x         | cxf-2.7.7               |
cxf-bindings-soap        | 2.7.7            | x         | cxf-2.7.7               |
cxf-jaxws                | 2.7.7            | x         | cxf-2.7.7               |
cxf-jaxrs                | 2.7.7            | x         | cxf-2.7.7               |
cxf-databinding-aegis    | 2.7.7            | x         | cxf-2.7.7               |
cxf-databinding-jaxb     | 2.7.7            | x         | cxf-2.7.7               |
cxf-databinding-xmlbeans | 2.7.7            | x         | cxf-2.7.7               |
cxf-features-clustering  | 2.7.7            | x         | cxf-2.7.7               |
cxf-bindings-corba       | 2.7.7            | x         | cxf-2.7.7               |
cxf-bindings-coloc       | 2.7.7            | x         | cxf-2.7.7               |
cxf-bindings-object      | 2.7.7            | x         | cxf-2.7.7               |
cxf-transports-local     | 2.7.7            | x         | cxf-2.7.7               |
cxf-transports-jms       | 2.7.7            | x         | cxf-2.7.7               |
cxf-transports-udp       | 2.7.7            | x         | cxf-2.7.7               |
cxf-javascript           | 2.7.7            | x         | cxf-2.7.7               |
cxf-frontend-javascript  | 2.7.7            | x         | cxf-2.7.7               |
cxf-xjc-runtime          | 2.7.7            | x         | cxf-2.7.7               |
cxf                      | 2.7.7            | x         | cxf-2.7.7               |
ptc-feature              | 1.0.0            | x         | ptc-features            |
activemq-standalone      | 1.0.0            | x         | ptc-features            |
spring-dm                | 1.2.1            | x         | spring-3.0.0            | Spring DM support
spring                   | 3.2.4.RELEASE    | x         | spring-3.0.0            | Spring 3.2.x support
spring-jms               | 3.2.4.RELEASE    | x         | spring-3.0.0            | Spring 3.2.x JMS support
spring-tx                | 3.2.4.RELEASE    | x         | spring-3.0.0            | Spring 3.2.x Transaction (TX) support


-Chris

On 01/23/2014 08:21 AM, Jean-Baptiste Onofré wrote:
> Hi Christopher,
>
> what's the list of installed features ?
>
> Regards
> JB
>
> On 01/23/2014 03:07 PM, Christopher Arnold wrote:
>> I'm attempting to hot deploy a Camel route using the ActiveMQComponent
>> into Karaf via the deploy folder using a blueprint xml file but I'm
>> running into dependency issues.  When Karaf attempts to start the
>> created bundle I see this error:
>>
>> 2014-01-22 13:41:51,092 | ERROR | -SNAPSHOT/deploy |
>> BlueprintContainerImpl           | 4 - org.apache.aries.blueprint.core -
>> 1.3.0 | Unable to start blueprint container for bundle blueprint.xml
>> org.osgi.service.blueprint.container.ComponentDefinitionException:
>> Unable to instantiate components
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:685)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:378)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0] 
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0] 
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0] 
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0] 
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0] 
>>
>>
>>      at
>> org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1247)[16:org.apache.felix.fileinstall:3.2.6] 
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1219)[16:org.apache.felix.fileinstall:3.2.6] 
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1208)[16:org.apache.felix.fileinstall:3.2.6] 
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:503)[16:org.apache.felix.fileinstall:3.2.6] 
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[16:org.apache.felix.fileinstall:3.2.6] 
>>
>>
>> Caused by: java.lang.NoClassDefFoundError:
>> org/apache/camel/spi/EndpointCompleter
>>      at java.lang.ClassLoader.defineClass1(Native Method)[:1.7.0_45]
>>      at 
>> java.lang.ClassLoader.defineClass(ClassLoader.java:800)[:1.7.0_45]
>>      at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2279) 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501) 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75) 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955) 
>>
>>
>>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>      at
>> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1374) 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1553) 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1484) 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75) 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955) 
>>
>>
>>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>      at
>> org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.loadClass(BlueprintContainerImpl.java:432)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintRepository.loadClass(BlueprintRepository.java:410)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.GenericType.parse(GenericType.java:113) 
>>
>>
>>      at
>> org.apache.aries.blueprint.di.AbstractRecipe.doLoadType(AbstractRecipe.java:168)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.di.AbstractRecipe.loadType(AbstractRecipe.java:161)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.loadClass(BeanRecipe.java:249) 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.getType(BeanRecipe.java:895) 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:323) 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806) 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787) 
>>
>>
>>      at
>> org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79) 
>>
>>      at 
>> java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_45]
>>      at
>> org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:681)[4:org.apache.aries.blueprint.core:1.3.0] 
>>
>>
>>      ... 21 more
>> Caused by: java.lang.ClassNotFoundException:
>> org.apache.camel.spi.EndpointCompleter not found by
>> org.apache.activemq.activemq-web-console [175]
>>      at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)[org.apache.felix.framework-4.2.1.jar:] 
>>
>>
>>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>      ... 52 more
>>
>> I've narrowed it down to instantiating the ActiveMQComponent bean as the
>> cause of the error.  Also, I've verified that the camel-core bundle is
>> present, active, and contains org.apache.camel.spi.EndpointCompleter.
>> Any idea why it can't find the class?
>>
>> Version Detail: ActiveMQ 5.9.0, Camel 2.12.2, Karaf 3.0.0
>> blueprint.xml for reference:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>      xmlns:camel="http://camel.apache.org/schema/blueprint"
>>      xsi:schemaLocation="
>>          http://www.osgi.org/xmlns/blueprint/v1.0.0
>> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>>          http://camel.apache.org/schema/blueprint
>> http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
>>      ">
>>
>>    <bean id="connectionFactory"
>> class="org.apache.activemq.ActiveMQConnectionFactory">
>>      <property name="brokerURL" value="tcp://localhost:61616"/>
>>    </bean>
>>
>>    <bean id="activemq"
>> class="org.apache.activemq.camel.component.ActiveMQComponent">
>>      <property name="connectionFactory" ref="connectionFactory"/>
>>    </bean>
>>
>>    <bean id="helloBean" class="com.company.test.integ.beans.HelloBean"/>
>>
>>    <camelContext xmlns="http://camel.apache.org/schema/blueprint"
>> id="camel">
>>      <route>
>>        <from
>> uri="cxfrs://http://0.0.0.0:8080/rest?resourceClasses=com.company.test.integ.rest.HelloService&amp;bindingStyle=SimpleConsumer"/> 
>>
>>
>>        <setExchangePattern pattern="InOut"/>
>>        <to 
>> uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>        <to uri="activemq:queue:test"/>
>>      </route>
>>      <route>
>>        <from uri="activemq:queue:test"/>
>>        <setExchangePattern pattern="InOut"/>
>>        <to 
>> uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>        <choice>
>>          <when>
>>            <simple>${header.operationName} == 'hello'</simple>
>>            <to uri="bean:helloBean?method=hello"/>
>>          </when>
>>          <otherwise>
>>            <log message="Bad operationName: ${header.operationName}"/>
>>          </otherwise>
>>        </choice>
>>        <to 
>> uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>      </route>
>>    </camelContext>
>>
>> </blueprint>
>>
>> Thanks,
>> -Chris
>>
>>
>>
>


Re: Fwd: Deploy issues in Karaf/Blueprint

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
By the way, I guess that it works with you install your route bundle 
using bundle:install ?
The issue occurs only when dropping the file into the deploy folder ?

Regards
JB

On 01/23/2014 03:21 PM, Jean-Baptiste Onofré wrote:
> Hi Christopher,
>
> what's the list of installed features ?
>
> Regards
> JB
>
> On 01/23/2014 03:07 PM, Christopher Arnold wrote:
>> I'm attempting to hot deploy a Camel route using the ActiveMQComponent
>> into Karaf via the deploy folder using a blueprint xml file but I'm
>> running into dependency issues.  When Karaf attempts to start the
>> created bundle I see this error:
>>
>> 2014-01-22 13:41:51,092 | ERROR | -SNAPSHOT/deploy |
>> BlueprintContainerImpl           | 4 - org.apache.aries.blueprint.core -
>> 1.3.0 | Unable to start blueprint container for bundle blueprint.xml
>> org.osgi.service.blueprint.container.ComponentDefinitionException:
>> Unable to instantiate components
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:685)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:378)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0]
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0]
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0]
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0]
>>
>>
>>      at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0]
>>
>>
>>      at
>> org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1247)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1219)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1208)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:503)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>
>>      at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>
>> Caused by: java.lang.NoClassDefFoundError:
>> org/apache/camel/spi/EndpointCompleter
>>      at java.lang.ClassLoader.defineClass1(Native Method)[:1.7.0_45]
>>      at
>> java.lang.ClassLoader.defineClass(ClassLoader.java:800)[:1.7.0_45]
>>      at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2279)
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501)
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
>>
>>
>>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>      at
>> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1374)
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1553)
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1484)
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
>>
>>
>>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>      at
>> org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.loadClass(BlueprintContainerImpl.java:432)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintRepository.loadClass(BlueprintRepository.java:410)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.GenericType.parse(GenericType.java:113)
>>
>>
>>      at
>> org.apache.aries.blueprint.di.AbstractRecipe.doLoadType(AbstractRecipe.java:168)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.di.AbstractRecipe.loadType(AbstractRecipe.java:161)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.loadClass(BeanRecipe.java:249)
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.getType(BeanRecipe.java:895)
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:323)
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806)
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)
>>
>>
>>      at
>> org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)
>>
>>      at
>> java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_45]
>>      at
>> org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:681)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>
>>      ... 21 more
>> Caused by: java.lang.ClassNotFoundException:
>> org.apache.camel.spi.EndpointCompleter not found by
>> org.apache.activemq.activemq-web-console [175]
>>      at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)[org.apache.felix.framework-4.2.1.jar:]
>>
>>
>>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>      ... 52 more
>>
>> I've narrowed it down to instantiating the ActiveMQComponent bean as the
>> cause of the error.  Also, I've verified that the camel-core bundle is
>> present, active, and contains org.apache.camel.spi.EndpointCompleter.
>> Any idea why it can't find the class?
>>
>> Version Detail: ActiveMQ 5.9.0, Camel 2.12.2, Karaf 3.0.0
>> blueprint.xml for reference:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>      xmlns:camel="http://camel.apache.org/schema/blueprint"
>>      xsi:schemaLocation="
>>          http://www.osgi.org/xmlns/blueprint/v1.0.0
>> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>>          http://camel.apache.org/schema/blueprint
>> http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
>>      ">
>>
>>    <bean id="connectionFactory"
>> class="org.apache.activemq.ActiveMQConnectionFactory">
>>      <property name="brokerURL" value="tcp://localhost:61616"/>
>>    </bean>
>>
>>    <bean id="activemq"
>> class="org.apache.activemq.camel.component.ActiveMQComponent">
>>      <property name="connectionFactory" ref="connectionFactory"/>
>>    </bean>
>>
>>    <bean id="helloBean" class="com.company.test.integ.beans.HelloBean"/>
>>
>>    <camelContext xmlns="http://camel.apache.org/schema/blueprint"
>> id="camel">
>>      <route>
>>        <from
>> uri="cxfrs://http://0.0.0.0:8080/rest?resourceClasses=com.company.test.integ.rest.HelloService&amp;bindingStyle=SimpleConsumer"/>
>>
>>
>>        <setExchangePattern pattern="InOut"/>
>>        <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>        <to uri="activemq:queue:test"/>
>>      </route>
>>      <route>
>>        <from uri="activemq:queue:test"/>
>>        <setExchangePattern pattern="InOut"/>
>>        <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>        <choice>
>>          <when>
>>            <simple>${header.operationName} == 'hello'</simple>
>>            <to uri="bean:helloBean?method=hello"/>
>>          </when>
>>          <otherwise>
>>            <log message="Bad operationName: ${header.operationName}"/>
>>          </otherwise>
>>        </choice>
>>        <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>      </route>
>>    </camelContext>
>>
>> </blueprint>
>>
>> Thanks,
>> -Chris
>>
>>
>>
>

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com

Re: Fwd: Deploy issues in Karaf/Blueprint

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
Hi Christopher,

what's the list of installed features ?

Regards
JB

On 01/23/2014 03:07 PM, Christopher Arnold wrote:
> I'm attempting to hot deploy a Camel route using the ActiveMQComponent
> into Karaf via the deploy folder using a blueprint xml file but I'm
> running into dependency issues.  When Karaf attempts to start the
> created bundle I see this error:
>
> 2014-01-22 13:41:51,092 | ERROR | -SNAPSHOT/deploy |
> BlueprintContainerImpl           | 4 - org.apache.aries.blueprint.core -
> 1.3.0 | Unable to start blueprint container for bundle blueprint.xml
> org.osgi.service.blueprint.container.ComponentDefinitionException:
> Unable to instantiate components
>      at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:685)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:378)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0]
>
>      at
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0]
>
>      at
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0]
>
>      at
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0]
>
>      at
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0]
>
>      at
> org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1247)[16:org.apache.felix.fileinstall:3.2.6]
>
>      at
> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1219)[16:org.apache.felix.fileinstall:3.2.6]
>
>      at
> org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1208)[16:org.apache.felix.fileinstall:3.2.6]
>
>      at
> org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:503)[16:org.apache.felix.fileinstall:3.2.6]
>
>      at
> org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[16:org.apache.felix.fileinstall:3.2.6]
>
> Caused by: java.lang.NoClassDefFoundError:
> org/apache/camel/spi/EndpointCompleter
>      at java.lang.ClassLoader.defineClass1(Native Method)[:1.7.0_45]
>      at java.lang.ClassLoader.defineClass(ClassLoader.java:800)[:1.7.0_45]
>      at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2279)
>
>      at
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501)
>
>      at
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
>
>      at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
>
>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>      at
> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1374)
>
>      at
> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1553)
>
>      at
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1484)
>
>      at
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
>
>      at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
>
>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>      at
> org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.loadClass(BlueprintContainerImpl.java:432)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintRepository.loadClass(BlueprintRepository.java:410)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.GenericType.parse(GenericType.java:113)
>
>      at
> org.apache.aries.blueprint.di.AbstractRecipe.doLoadType(AbstractRecipe.java:168)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.di.AbstractRecipe.loadType(AbstractRecipe.java:161)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BeanRecipe.loadClass(BeanRecipe.java:249)
>
>      at
> org.apache.aries.blueprint.container.BeanRecipe.getType(BeanRecipe.java:895)
>
>      at
> org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:323)
>
>      at
> org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806)
>
>      at
> org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)
>
>      at
> org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)
>      at java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_45]
>      at
> org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:681)[4:org.apache.aries.blueprint.core:1.3.0]
>
>      ... 21 more
> Caused by: java.lang.ClassNotFoundException:
> org.apache.camel.spi.EndpointCompleter not found by
> org.apache.activemq.activemq-web-console [175]
>      at
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)[org.apache.felix.framework-4.2.1.jar:]
>
>      at
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)[org.apache.felix.framework-4.2.1.jar:]
>
>      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>      ... 52 more
>
> I've narrowed it down to instantiating the ActiveMQComponent bean as the
> cause of the error.  Also, I've verified that the camel-core bundle is
> present, active, and contains org.apache.camel.spi.EndpointCompleter.
> Any idea why it can't find the class?
>
> Version Detail: ActiveMQ 5.9.0, Camel 2.12.2, Karaf 3.0.0
> blueprint.xml for reference:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>      xmlns:camel="http://camel.apache.org/schema/blueprint"
>      xsi:schemaLocation="
>          http://www.osgi.org/xmlns/blueprint/v1.0.0
> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>          http://camel.apache.org/schema/blueprint
> http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
>      ">
>
>    <bean id="connectionFactory"
> class="org.apache.activemq.ActiveMQConnectionFactory">
>      <property name="brokerURL" value="tcp://localhost:61616"/>
>    </bean>
>
>    <bean id="activemq"
> class="org.apache.activemq.camel.component.ActiveMQComponent">
>      <property name="connectionFactory" ref="connectionFactory"/>
>    </bean>
>
>    <bean id="helloBean" class="com.company.test.integ.beans.HelloBean"/>
>
>    <camelContext xmlns="http://camel.apache.org/schema/blueprint"
> id="camel">
>      <route>
>        <from
> uri="cxfrs://http://0.0.0.0:8080/rest?resourceClasses=com.company.test.integ.rest.HelloService&amp;bindingStyle=SimpleConsumer"/>
>
>        <setExchangePattern pattern="InOut"/>
>        <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>        <to uri="activemq:queue:test"/>
>      </route>
>      <route>
>        <from uri="activemq:queue:test"/>
>        <setExchangePattern pattern="InOut"/>
>        <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>        <choice>
>          <when>
>            <simple>${header.operationName} == 'hello'</simple>
>            <to uri="bean:helloBean?method=hello"/>
>          </when>
>          <otherwise>
>            <log message="Bad operationName: ${header.operationName}"/>
>          </otherwise>
>        </choice>
>        <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>      </route>
>    </camelContext>
>
> </blueprint>
>
> Thanks,
> -Chris
>
>
>

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com

Re: Fwd: Deploy issues in Karaf/Blueprint

Posted by Christopher Arnold <ca...@ptc.com>.
Looks like this is at least related.  I removed the activemq-web-console 
feature and that seems to get things working. Looking at 
bundle:tree-show it looks like for some reason the activemq-web-console 
is exporting all of the activemq packages and thus is getting wired to 
my bundle instead of activemq-osgi - and activemq-web-console doesn't 
get wired to all the dependencies that activemq needs.  Looks like this 
was already reported to ActiveMQ so hopefully they'll have a fix soon - 
we'll probably be needing to have the webconsole for A-MQ for production.

JB - we're using our own broker feature with a custom broker config w/o 
JAAS.

Thanks,
-Chris

On 01/23/2014 08:48 AM, Jean-Baptiste Onofré wrote:
> Good point: indeed I would install activemq-broker-noweb instead of 
> activemq-broker.
>
> More over, AFAIR, the default activemq-broker feature installs a 
> activemq.xml (in etc) including a JAAS plugin for authentication.
> I would try to remove the JAAS plugin.
>
> Regards
> JB
>
> On 01/23/2014 03:37 PM, A. Rothman wrote:
>>
>> A wild guess here, but maybe it's the same issue with the ActiveMQ
>> webconsole bundle as in https://issues.apache.org/jira/browse/AMQ-4850.
>> If you're not using the ActiveMQ web console, try uninstalling it or
>> installing the -noweb feature instead of the full feature, that solved
>> all the NoClassDefFoundErrors I've had with ActiveMQ in Karaf.
>>
>> On 01/23/2014 04:07 PM, Christopher Arnold wrote:
>>> I'm attempting to hot deploy a Camel route using the ActiveMQComponent
>>> into Karaf via the deploy folder using a blueprint xml file but I'm
>>> running into dependency issues.  When Karaf attempts to start the
>>> created bundle I see this error:
>>>
>>> 2014-01-22 13:41:51,092 | ERROR | -SNAPSHOT/deploy |
>>> BlueprintContainerImpl           | 4 - org.apache.aries.blueprint.core
>>> - 1.3.0 | Unable to start blueprint container for bundle blueprint.xml
>>> org.osgi.service.blueprint.container.ComponentDefinitionException:
>>> Unable to instantiate components
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:685)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:378)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1247)[16:org.apache.felix.fileinstall:3.2.6] 
>>>
>>>
>>>     at
>>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1219)[16:org.apache.felix.fileinstall:3.2.6] 
>>>
>>>
>>>     at
>>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1208)[16:org.apache.felix.fileinstall:3.2.6] 
>>>
>>>
>>>     at
>>> org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:503)[16:org.apache.felix.fileinstall:3.2.6] 
>>>
>>>
>>>     at
>>> org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[16:org.apache.felix.fileinstall:3.2.6] 
>>>
>>>
>>> Caused by: java.lang.NoClassDefFoundError:
>>> org/apache/camel/spi/EndpointCompleter
>>>     at java.lang.ClassLoader.defineClass1(Native Method)[:1.7.0_45]
>>>     at 
>>> java.lang.ClassLoader.defineClass(ClassLoader.java:800)[:1.7.0_45]
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2279) 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501) 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75) 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955) 
>>>
>>>
>>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1374) 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1553) 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1484) 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75) 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955) 
>>>
>>>
>>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>>     at
>>> org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintContainerImpl.loadClass(BlueprintContainerImpl.java:432)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintRepository.loadClass(BlueprintRepository.java:410)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.GenericType.parse(GenericType.java:113) 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.di.AbstractRecipe.doLoadType(AbstractRecipe.java:168)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.di.AbstractRecipe.loadType(AbstractRecipe.java:161)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BeanRecipe.loadClass(BeanRecipe.java:249) 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BeanRecipe.getType(BeanRecipe.java:895) 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:323) 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806) 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787) 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79) 
>>>
>>>
>>>     at
>>> java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_45]
>>>     at
>>> org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     at
>>> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:681)[4:org.apache.aries.blueprint.core:1.3.0] 
>>>
>>>
>>>     ... 21 more
>>> Caused by: java.lang.ClassNotFoundException:
>>> org.apache.camel.spi.EndpointCompleter not found by
>>> org.apache.activemq.activemq-web-console [175]
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at
>>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)[org.apache.felix.framework-4.2.1.jar:] 
>>>
>>>
>>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>>     ... 52 more
>>>
>>> I've narrowed it down to instantiating the ActiveMQComponent bean as 
>>> the
>>> cause of the error.  Also, I've verified that the camel-core bundle is
>>> present, active, and contains org.apache.camel.spi.EndpointCompleter.
>>> Any idea why it can't find the class?
>>>
>>> Version Detail: ActiveMQ 5.9.0, Camel 2.12.2, Karaf 3.0.0
>>> blueprint.xml for reference:
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>     xmlns:camel="http://camel.apache.org/schema/blueprint"
>>>     xsi:schemaLocation="
>>>         http://www.osgi.org/xmlns/blueprint/v1.0.0
>>> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>>>         http://camel.apache.org/schema/blueprint
>>> http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
>>>     ">
>>>
>>>   <bean id="connectionFactory"
>>> class="org.apache.activemq.ActiveMQConnectionFactory">
>>>     <property name="brokerURL" value="tcp://localhost:61616"/>
>>>   </bean>
>>>
>>>   <bean id="activemq"
>>> class="org.apache.activemq.camel.component.ActiveMQComponent">
>>>     <property name="connectionFactory" ref="connectionFactory"/>
>>>   </bean>
>>>
>>>   <bean id="helloBean" class="com.company.test.integ.beans.HelloBean"/>
>>>
>>>   <camelContext xmlns="http://camel.apache.org/schema/blueprint"
>>> id="camel">
>>>     <route>
>>>       <from
>>> uri="cxfrs://http://0.0.0.0:8080/rest?resourceClasses=com.company.test.integ.rest.HelloService&amp;bindingStyle=SimpleConsumer"/> 
>>>
>>>
>>>       <setExchangePattern pattern="InOut"/>
>>>       <to 
>>> uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>>       <to uri="activemq:queue:test"/>
>>>     </route>
>>>     <route>
>>>       <from uri="activemq:queue:test"/>
>>>       <setExchangePattern pattern="InOut"/>
>>>       <to 
>>> uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>>       <choice>
>>>         <when>
>>>           <simple>${header.operationName} == 'hello'</simple>
>>>           <to uri="bean:helloBean?method=hello"/>
>>>         </when>
>>>         <otherwise>
>>>           <log message="Bad operationName: ${header.operationName}"/>
>>>         </otherwise>
>>>       </choice>
>>>       <to 
>>> uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>>     </route>
>>>   </camelContext>
>>>
>>> </blueprint>
>>>
>>> Thanks,
>>> -Chris
>>>
>>>
>>>
>>>
>>
>>
>


Re: Fwd: Deploy issues in Karaf/Blueprint

Posted by Jean-Baptiste Onofré <jb...@nanthrax.net>.
Good point: indeed I would install activemq-broker-noweb instead of 
activemq-broker.

More over, AFAIR, the default activemq-broker feature installs a 
activemq.xml (in etc) including a JAAS plugin for authentication.
I would try to remove the JAAS plugin.

Regards
JB

On 01/23/2014 03:37 PM, A. Rothman wrote:
>
> A wild guess here, but maybe it's the same issue with the ActiveMQ
> webconsole bundle as in https://issues.apache.org/jira/browse/AMQ-4850.
> If you're not using the ActiveMQ web console, try uninstalling it or
> installing the -noweb feature instead of the full feature, that solved
> all the NoClassDefFoundErrors I've had with ActiveMQ in Karaf.
>
> On 01/23/2014 04:07 PM, Christopher Arnold wrote:
>> I'm attempting to hot deploy a Camel route using the ActiveMQComponent
>> into Karaf via the deploy folder using a blueprint xml file but I'm
>> running into dependency issues.  When Karaf attempts to start the
>> created bundle I see this error:
>>
>> 2014-01-22 13:41:51,092 | ERROR | -SNAPSHOT/deploy |
>> BlueprintContainerImpl           | 4 - org.apache.aries.blueprint.core
>> - 1.3.0 | Unable to start blueprint container for bundle blueprint.xml
>> org.osgi.service.blueprint.container.ComponentDefinitionException:
>> Unable to instantiate components
>>     at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:685)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:378)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0]
>>
>>     at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0]
>>
>>     at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0]
>>
>>     at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0]
>>
>>     at
>> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0]
>>
>>     at
>> org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1247)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>     at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1219)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>     at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1208)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>     at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:503)[16:org.apache.felix.fileinstall:3.2.6]
>>
>>     at
>> org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[16:org.apache.felix.fileinstall:3.2.6]
>>
>> Caused by: java.lang.NoClassDefFoundError:
>> org/apache/camel/spi/EndpointCompleter
>>     at java.lang.ClassLoader.defineClass1(Native Method)[:1.7.0_45]
>>     at java.lang.ClassLoader.defineClass(ClassLoader.java:800)[:1.7.0_45]
>>     at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2279)
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501)
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
>>
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>     at
>> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1374)
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1553)
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1484)
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
>>
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>     at
>> org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.loadClass(BlueprintContainerImpl.java:432)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintRepository.loadClass(BlueprintRepository.java:410)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.GenericType.parse(GenericType.java:113)
>>
>>     at
>> org.apache.aries.blueprint.di.AbstractRecipe.doLoadType(AbstractRecipe.java:168)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.di.AbstractRecipe.loadType(AbstractRecipe.java:161)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BeanRecipe.loadClass(BeanRecipe.java:249)
>>
>>     at
>> org.apache.aries.blueprint.container.BeanRecipe.getType(BeanRecipe.java:895)
>>
>>     at
>> org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:323)
>>
>>     at
>> org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806)
>>
>>     at
>> org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)
>>
>>     at
>> org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)
>>
>>     at
>> java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_45]
>>     at
>> org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     at
>> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:681)[4:org.apache.aries.blueprint.core:1.3.0]
>>
>>     ... 21 more
>> Caused by: java.lang.ClassNotFoundException:
>> org.apache.camel.spi.EndpointCompleter not found by
>> org.apache.activemq.activemq-web-console [175]
>>     at
>> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at
>> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)[org.apache.felix.framework-4.2.1.jar:]
>>
>>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>>     ... 52 more
>>
>> I've narrowed it down to instantiating the ActiveMQComponent bean as the
>> cause of the error.  Also, I've verified that the camel-core bundle is
>> present, active, and contains org.apache.camel.spi.EndpointCompleter.
>> Any idea why it can't find the class?
>>
>> Version Detail: ActiveMQ 5.9.0, Camel 2.12.2, Karaf 3.0.0
>> blueprint.xml for reference:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>     xmlns:camel="http://camel.apache.org/schema/blueprint"
>>     xsi:schemaLocation="
>>         http://www.osgi.org/xmlns/blueprint/v1.0.0
>> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>>         http://camel.apache.org/schema/blueprint
>> http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
>>     ">
>>
>>   <bean id="connectionFactory"
>> class="org.apache.activemq.ActiveMQConnectionFactory">
>>     <property name="brokerURL" value="tcp://localhost:61616"/>
>>   </bean>
>>
>>   <bean id="activemq"
>> class="org.apache.activemq.camel.component.ActiveMQComponent">
>>     <property name="connectionFactory" ref="connectionFactory"/>
>>   </bean>
>>
>>   <bean id="helloBean" class="com.company.test.integ.beans.HelloBean"/>
>>
>>   <camelContext xmlns="http://camel.apache.org/schema/blueprint"
>> id="camel">
>>     <route>
>>       <from
>> uri="cxfrs://http://0.0.0.0:8080/rest?resourceClasses=com.company.test.integ.rest.HelloService&amp;bindingStyle=SimpleConsumer"/>
>>
>>       <setExchangePattern pattern="InOut"/>
>>       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>       <to uri="activemq:queue:test"/>
>>     </route>
>>     <route>
>>       <from uri="activemq:queue:test"/>
>>       <setExchangePattern pattern="InOut"/>
>>       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>       <choice>
>>         <when>
>>           <simple>${header.operationName} == 'hello'</simple>
>>           <to uri="bean:helloBean?method=hello"/>
>>         </when>
>>         <otherwise>
>>           <log message="Bad operationName: ${header.operationName}"/>
>>         </otherwise>
>>       </choice>
>>       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>>     </route>
>>   </camelContext>
>>
>> </blueprint>
>>
>> Thanks,
>> -Chris
>>
>>
>>
>>
>
>

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com

Re: Fwd: Deploy issues in Karaf/Blueprint

Posted by "A. Rothman" <am...@amichais.net>.
A wild guess here, but maybe it's the same issue with the ActiveMQ 
webconsole bundle as in https://issues.apache.org/jira/browse/AMQ-4850. 
If you're not using the ActiveMQ web console, try uninstalling it or 
installing the -noweb feature instead of the full feature, that solved 
all the NoClassDefFoundErrors I've had with ActiveMQ in Karaf.

On 01/23/2014 04:07 PM, Christopher Arnold wrote:
> I'm attempting to hot deploy a Camel route using the ActiveMQComponent
> into Karaf via the deploy folder using a blueprint xml file but I'm
> running into dependency issues.  When Karaf attempts to start the
> created bundle I see this error:
>
> 2014-01-22 13:41:51,092 | ERROR | -SNAPSHOT/deploy | 
> BlueprintContainerImpl           | 4 - org.apache.aries.blueprint.core 
> - 1.3.0 | Unable to start blueprint container for bundle blueprint.xml
> org.osgi.service.blueprint.container.ComponentDefinitionException: 
> Unable to instantiate components
>     at 
> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:685)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:378)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:269)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:276)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:235)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[2:org.apache.aries.util:1.1.0]
>     at 
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[2:org.apache.aries.util:1.1.0]
>     at 
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[2:org.apache.aries.util:1.1.0]
>     at 
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[2:org.apache.aries.util:1.1.0]
>     at 
> org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[2:org.apache.aries.util:1.1.0]
>     at 
> org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4403)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.framework.Felix.startBundle(Felix.java:2092)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.framework.BundleImpl.start(BundleImpl.java:955)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1247)[16:org.apache.felix.fileinstall:3.2.6]
>     at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1219)[16:org.apache.felix.fileinstall:3.2.6]
>     at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1208)[16:org.apache.felix.fileinstall:3.2.6]
>     at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:503)[16:org.apache.felix.fileinstall:3.2.6]
>     at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:291)[16:org.apache.felix.fileinstall:3.2.6]
> Caused by: java.lang.NoClassDefFoundError: 
> org/apache/camel/spi/EndpointCompleter
>     at java.lang.ClassLoader.defineClass1(Native Method)[:1.7.0_45]
>     at java.lang.ClassLoader.defineClass(ClassLoader.java:800)[:1.7.0_45]
>     at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2279)
>     at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501)
>     at 
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
>     at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>     at 
> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1374)
>     at 
> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1553)
>     at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1484)
>     at 
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)
>     at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>     at 
> org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.aries.blueprint.container.BlueprintContainerImpl.loadClass(BlueprintContainerImpl.java:432)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintRepository.loadClass(BlueprintRepository.java:410)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.GenericType.parse(GenericType.java:113)
>     at 
> org.apache.aries.blueprint.di.AbstractRecipe.doLoadType(AbstractRecipe.java:168)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.di.AbstractRecipe.loadType(AbstractRecipe.java:161)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BeanRecipe.loadClass(BeanRecipe.java:249)
>     at 
> org.apache.aries.blueprint.container.BeanRecipe.getType(BeanRecipe.java:895)
>     at 
> org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:323)
>     at 
> org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:806)
>     at 
> org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)
>     at 
> org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)
>     at 
> java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_45]
>     at 
> org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:183)[4:org.apache.aries.blueprint.core:1.3.0]
>     at 
> org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:681)[4:org.apache.aries.blueprint.core:1.3.0]
>     ... 21 more
> Caused by: java.lang.ClassNotFoundException: 
> org.apache.camel.spi.EndpointCompleter not found by 
> org.apache.activemq.activemq-web-console [175]
>     at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)[org.apache.felix.framework-4.2.1.jar:]
>     at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)[org.apache.felix.framework-4.2.1.jar:]
>     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_45]
>     ... 52 more
>
> I've narrowed it down to instantiating the ActiveMQComponent bean as the
> cause of the error.  Also, I've verified that the camel-core bundle is
> present, active, and contains org.apache.camel.spi.EndpointCompleter.
> Any idea why it can't find the class?
>
> Version Detail: ActiveMQ 5.9.0, Camel 2.12.2, Karaf 3.0.0
> blueprint.xml for reference:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" 
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>     xmlns:camel="http://camel.apache.org/schema/blueprint"
>     xsi:schemaLocation="
>         http://www.osgi.org/xmlns/blueprint/v1.0.0 
> http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
>         http://camel.apache.org/schema/blueprint 
> http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
>     ">
>
>   <bean id="connectionFactory" 
> class="org.apache.activemq.ActiveMQConnectionFactory">
>     <property name="brokerURL" value="tcp://localhost:61616"/>
>   </bean>
>
>   <bean id="activemq" 
> class="org.apache.activemq.camel.component.ActiveMQComponent">
>     <property name="connectionFactory" ref="connectionFactory"/>
>   </bean>
>
>   <bean id="helloBean" class="com.company.test.integ.beans.HelloBean"/>
>
>   <camelContext xmlns="http://camel.apache.org/schema/blueprint" 
> id="camel">
>     <route>
>       <from 
> uri="cxfrs://http://0.0.0.0:8080/rest?resourceClasses=com.company.test.integ.rest.HelloService&amp;bindingStyle=SimpleConsumer"/>
>       <setExchangePattern pattern="InOut"/>
>       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>       <to uri="activemq:queue:test"/>
>     </route>
>     <route>
>       <from uri="activemq:queue:test"/>
>       <setExchangePattern pattern="InOut"/>
>       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>       <choice>
>         <when>
>           <simple>${header.operationName} == 'hello'</simple>
>           <to uri="bean:helloBean?method=hello"/>
>         </when>
>         <otherwise>
>           <log message="Bad operationName: ${header.operationName}"/>
>         </otherwise>
>       </choice>
>       <to uri="log:com.company.test.integ?level=INFO&amp;showAll=true"/>
>     </route>
>   </camelContext>
>
> </blueprint>
>
> Thanks,
> -Chris
>
>
>
>