Hello.

Does it mean that anyway I have to be aware of the Camel's dependencies 
of my blueprint routes when I package them as an OSGi bundle ?

I've verified several times that a same blueprint deployed alone works 
by itself with all the needed features if they are already installed of 
course. This suggests that the blueprint context is correctly created in 
this case, and I don't understand why the same file could not be 
processed when it is included in a bundled JAR.

In addition, how can I identify all the packages that simple tags in my 
blueprint imply, like "<groovy>" in my case ? I've done a test, copying 
from the web console in the Import-Package section of the descriptor of 
the bundle for a flat XML once it is deployed, and put it in my Maven 
Plugin instructions, but dynamic runtime dependencies of groovy  were 
still missing, and other exceptions occurred. In this case the package 
"org.codehaus.groovy .runtime.typehandling" was loaded lately when 
needed... I'm sure other groovy packages could be missing...

It seems the blueprint containers are not provisioned with identical 
class loaders depending of the packaging, at least for groovy...

Could it be confirmed ?

Thanks for your help.
Regards.

Ephemeris Lappis

Le 30/07/2012 18:36, Jon Anstey [via ServiceMix] a écrit :
> The maven-bundle-plugin won't detect what Camel components you are using
> and make sure those are installed. To do this you will need to use a
> feature for your application
> http://karaf.apache.org/manual/latest-2.2.x/users-guide/provisioning.htmlYou
> can create one something like this:
>
>     <feature name="myapp" version="${project.version}">
>         <feature>camel-core</feature>
>         <feature>camel-blueprint</feature>
>         <feature>camel-activemq</feature>
>         ...
> <bundle>mvn:myapp/myapp/${project.version}</bundle>
>     </feature>
>
> Now, when you install "myapp" feature, all the Camel components you need
> will be installed as well.
>
> If you want to enforce the various package imports are there at the OSGi
> bundle level, you can always add them in manually with the 
> <Import-Package>
> instruction.
>
> Cheers,
> Jon
>
> On Fri, Jul 27, 2012 at 1:41 PM, Ephemeris Lappis <
> [hidden email] </user/SendEmail.jtp?type=node&node=5714022&i=0>> wrote:
>
> > Hello.
> >
> > It seems that dependencies for a blueprint file depend on the way it is
> > deployed.
> >
> > In a first step, I directly copy the blueprint XML file to the deploy
> > folder, and it works as expected.
> >
> > In a second step, I package the same file into a bundle using the felix
> > maven plugin, and deploy the generated JAR into the deploy folder. 
> In this
> > case, an error is produced during the deployment :
> >
> > java.lang.NoClassDefFoundError: groovy/lang/Script
> >
> > I've not tested other cases, but I suppose that it may do the same 
> error
> > for
> > other Camel component like it does with groovy in my example.
> >
> > When I look at the first bundle description in the web console, I 
> can see a
> > list of all the actual dependent modules in the imported packages :
> >
> > groovy.lang,version=1.8.5 from groovy-all (219)
> > groovyjarjarantlr,version=1.8.5 from groovy-all (219)
> > org.apache.activemq,version=5.5.1 from 
> org.apache.activemq.activemq-core
> > (50)
> > org.apache.camel,version=2.8.5 from org.apache.camel.camel-core (91)
> > org.apache.camel.blueprint,version=2.8.5 from
> > org.apache.camel.camel-blueprint (152)
> > org.apache.camel.impl,version=2.8.5 from org.apache.camel.camel-core 
> (91)
> > org.apache.camel.spi,version=2.8.5 from org.apache.camel.camel-core 
> (91)
> > org.codehaus.groovy.reflection,version=1.8.5 from groovy-all (219)
> > org.codehaus.groovy.runtime.callsite,version=1.8.5 from groovy-all 
> (219)
> > org.osgi.service.blueprint.container,version=1.0.1 from
> > org.apache.aries.blueprint (10)
> >
> > In the second case, the maven plugin only sets the
> > "org.osgi.service.blueprint" in the imported packages list in the 
> manifest.
> > Indeed, It seems that all the OSGi part of my blueprint is taken into
> > account, but nothing from the camel context... Nothing seems to be 
> done at
> > deployment time to add the camel components dependences...
> >
> > Where is the error ? Should I do something different to build the 
> JAR with
> > the maven plugin ?
> >
> > Thanks for you help.
> >
> > http://servicemix.396122.n5.nabble.com/file/n5714018/camel-context.xml
> > camel-context.xml
> > http://servicemix.396122.n5.nabble.com/file/n5714018/pom.xml pom.xml
> >
> >
> >
> > --
> > View this message in context:
> > 
> http://servicemix.396122.n5.nabble.com/Camel-classpath-using-blueprint-inside-an-OSGi-bundle-tp5714018.html
> > Sent from the ServiceMix - User mailing list archive at Nabble.com.
> >
>
>
>
> -- 
> Cheers,
> Jon
> ---------------
> FuseSource
> Email: [hidden email] </user/SendEmail.jtp?type=node&node=5714022&i=1>
> Web: fusesource.com
> Twitter: jon_anstey
> Blog: http://janstey.blogspot.com
> Author of Camel in Action: http://manning.com/ibsen
>
>
> ------------------------------------------------------------------------
> If you reply to this email, your message will be added to the 
> discussion below:
> http://servicemix.396122.n5.nabble.com/Camel-classpath-using-blueprint-inside-an-OSGi-bundle-tp5714018p5714022.html
>  
>
> To unsubscribe from Camel classpath using blueprint inside an OSGi 
> bundle, click here 
> <http://servicemix.396122.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=5714018&code=ZXBoZW1lcmlzLmxhcHBpc0BnbWFpbC5jb218NTcxNDAxOHw0OTQyMjM2NDI=>.
> NAML 
> <http://servicemix.396122.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>  
>





--
View this message in context: 
http://servicemix.396122.n5.nabble.com/Camel-classpath-using-blueprint-inside-an-OSGi-bundle-tp5714018p5714024.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to