camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mangin, Franck" <FranckMan...@fico.com>
Subject RE: Confused with Camel in Spring/OSGI
Date Sun, 16 Feb 2014 17:58:04 GMT
For anyone going through this thread in the future, Virgo is an evolution of Spring DM. The
BundleAware interface that camel-spring is relying on has been moved into a different package
in the embedded Virgo version of Spring DM (somewhere under a blueprint package).

The right approach then (which I have not tested) would be to create a modified OsgiDefaultCamelContext
that leverages that Virgo-specific BundleAware interface. The OSGI detection in CamelNamespaceHandler
will have to be fixed accordingly (Class.forName("org.apache.camel.osgi.CamelContextFactoryBean");
will fail).

Franck

-----Original Message-----
From: Mangin, Franck [mailto:FranckMangin@fico.com] 
Sent: Thursday, February 13, 2014 6:55 AM
To: users@camel.apache.org
Subject: RE: Confused with Camel in Spring/OSGI

Thanks Willem, that clarifies things, I hadn't fully realized that Spring DM is clearly distinct
from spring.



I am a bit hesitant about bringing in Spring DM into the picture for a couple reasons:

- Virgo comes with spring 3 installed (and uses it heavily), the latest version of spring
DM onMaven Central depends on spring 2.5.6

- I am a bit concerned with spring DM / OSGI interactions messing up internal Virgo spring
wirings



I gave blueprint a try but Virgo ships with Gemini whereas the Camel blueprint support has
hard dependencies on Apache Aries...



I think I can get the org.apache.camel.core.osgi.OsgiDefaultCamelContext up and running: will
that actually be useful without Spring DM installed? Or is pretty much all the OSGI support
in camel-spring dependent on spring DM being deployed?

One example of what I would hope to achieve is to be able to register / detect TypeConverters
through OSGI mechanisms (classloaders and/or registry)?



Thanks!

Franck



-----Original Message-----
From: Willem Jiang [mailto:willem.jiang@gmail.com]
Sent: Thursday, February 13, 2014 2:44 AM
To: users@camel.apache.org
Subject: RE: Confused with Camel in Spring/OSGI



Hi,



Current camel-spring are only tested with Spring-DM, camel-blueprint could be an option for
you if the Virgo server support the Blueprint out of box, but you may not use the some advance
features that spring provides.





--

Willem Jiang



Red Hat, Inc.

Web: http://www.redhat.com

Blog: http://willemjiang.blogspot.com(http://willemjiang.blogspot.com/)<http://willemjiang.blogspot.com(http:/willemjiang.blogspot.com/)>
(English)

http://jnn.iteye.com(http://jnn.javaeye.com/)<http://jnn.iteye.com(http:/jnn.javaeye.com/)>
(Chinese)

Twitter: willemjiang

Weibo: 姜宁willem







On February 13, 2014 at 1:35:55 AM, Mangin, Franck (franckmangin@fico.com<mailto:franckmangin@fico.com>)
wrote:

>

> Well, as far as I can tell (and I may definitely be missing something)

> the state of OSGI support in camel-spring is in a pretty sorry state

> of affair...

>

>

>

> camel-spring 2.12.2 depends on spring 3.1.0.RELEASE, but it contains

> references to the BundleContextAware class which doesn't seem to be

> supported anymore in spring 3.x. Trying to grab that class from old

> org.springframework.osgi bundles doesn't help presumably because

> nobody in spring 3 is paying attention to that interface anymore so

> the injection of the bundle context doesn't happen.

>

>

>

> I tried to work around that by declaring my own CamelNamespaceHandler,

> which registers my own CamelContextFactoryBean which obtains the

> bundle context by other means.

>

> That however eventually fails because the org.apache.camel.core.osgi

> package is not exported by camel-spring.

>

>

>

> Looks like the smartest thing to do will be to give up on spring

> configuration alltogether and create my own Camel context manually.

>

>

>

> There is a lot valuable code in org.apache.camel.core.osgi and in

> org.apache.camel.osgi, it is too bad that it is apparently only tested

> and working on karaf.

>

> If someone know what the proper equivalent to BundleContextAware is in

> spring 3 is I could provide a modified bean factory if that is of

> interest.

>

>

>

> Franck

>

>

>

> -----Original Message-----

> From: Claus Ibsen [mailto:claus.ibsen@gmail.com]

> Sent: Wednesday, February 12, 2014 3:29 PM

> To: users@camel.apache.org<mailto:users@camel.apache.org>

> Subject: Re: Confused with Camel in Spring/OSGI

>

>

>

> Hi

>

>

>

> Camel works the best in Apache Karaf as its OSGi container.

>

> That is what we use for development and testing.

>

>

>

> There may be some caveats and issues running in Eclipse Virgo.

>

>

>

> If it does not matter for you which osgi container, then I suggest to

> use Apache Karaf

>

>

>

>

>

> On Wed, Feb 12, 2014 at 1:47 PM, franck102 >

> wrote:

>

> > I am trying to use Camel 2.12. in a Virgo server, using spring/OSGI

>

> > since Virgo's blueprint is based on Gemini.

>

> >

>

> > The context.xml file below sucessfully starts a camel context...

>

> > however breaking in the code shows that I am instantiating a

>

> > SpringCamelContext rather than a org.apache.camel.core.osgi.OsgiDefaultCamelContext.

>

> >

>

> > It looks like I want the

> > org.apache.camel.osgi.CamelContextFactoryBean

>

> > to create my camel context, but I just can't figure out how to

> tell

>

> > Spring to use that factory. I have read hundreds of posts about

> camel,

>

> > spring & OSGI and I just can't figure this out, any help would

> be greatly appreciated!

>

> >

>

> > I am using maven and having dependencies on camel-core and camel-spring.

>

> > It looks like osgi support has been embedded into camel-spring,

> and so

>

> > I should not need or want dependencies on camel-core-osgi or

> camel-osgi?

>

> >

>

> >

>

> >

>

> >

>

> > >

> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

>

> > xsi:schemaLocation="

>

> > http://www.springframework.org/schema/beans

>

> > http://www.springframework.org/schema/beans/spring-beans-3.0.xsd

>

> > http://camel.apache.org/schema/spring

>

> > http://camel.apache.org/schema/spring/camel-spring.xsd">

>

> >

>

> > >

> > xmlns="http://camel.apache.org/schema/spring">

>

> > >

> > uri="seda:mcedits?multipleConsumers=true"/>

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> >

>

> > --

>

> > View this message in context:

>

> > http://camel.465427.n5.nabble.com/Confused-with-Camel-in-Spring-OSGI

> > -t

>

> > p5747186.html Sent from the Camel - Users mailing list archive

> at

>

> > Nabble.com.

>

>

>

>

>

>

>

> --

>

> Claus Ibsen

>

> -----------------

>

> Red Hat, Inc.

>

> Email: cibsen@redhat.com<mailto:cibsen@redhat.com>

>

> Twitter: davsclaus

>

> Blog: http://davsclaus.com

>

> Author of Camel in Action: http://www.manning.com/ibsen Make your

> Camel applications look hawt, try: http://hawt.io

>

> This email and any files transmitted with it are confidential,

> proprietary and intended solely for the individual or entity to whom

> they are addressed. If you have received this email in error please

> delete it immediately.

>



This email and any files transmitted with it are confidential, proprietary and intended solely
for the individual or entity to whom they are addressed. If you have received this email in
error please delete it immediately.

This email and any files transmitted with it are confidential, proprietary and intended solely
for the individual or entity to whom they are addressed. If you have received this email in
error please delete it immediately.
Mime
View raw message