Camel refers to Spring bundles only indirectly through Karafs standard
features and I use an own version of these.
I can imagine that this is not recommended, but it is a requirement for
me as I use a replacement for Pax logging.
To ensure that the unwanted bundles don't get packaged it also requires
some exclusions in the assembly descriptor.
If, as with Hibernate 4, only some new classes introduced with Spring
3.1 are required, another solution could be to pack this classes into an
additional spring bundle.
Maven dependency:unpack could be utilized to do that.
Regards, Stefan
On 10.03.2012 19:07, Christian Müller wrote:
Maybe Stefan don't use the Camel provided features and install all the
needed bundles by its own or build its own feature file which use Spring
3.1.x. That's possible but not recommended, because Camel 2.9.1 is "only"
tested with Spring 3.0.x. This means it could work, but you cannot be sure.
It's also possible that may camel-jpa works with Spring 3.1.x but another
Camel component e.g. camel-jms/camel-activemq will fail with Spring 3.1.x.
In the past we already did support two different versions of Spring (2.5.x
and 3.0.x). I'm not sure were we was happy with this solution (two
different feature files in Camel)...
Loud thinking:
At the moment I'm not sure if it's really the best idea that Camel reuse
the Karaf provided Spring feature (may be this is also the case for other
features). The reason is the following:
Imagine you run Karaf 2.2.x (plain Karaf or ServiceMix) and you don't want
to upgrade your container infrastructure multiple times per year (this is
the case for my company). When you upgrade your Camel based application to
a Camel version which use Spring 3.1.x, you have to:
- upgrade your container infrastructure also (Karaf)
- or change the Camel provided feature file and change all the places where
Camel requires the Spring feature (from Karaf) and replace it with the
Spring 3.1.x bundles.
Be leveraging the Karaf Spring features it's easier to have all the
dependencies in sync, but it adds an (unnecessary) constraint.
And if Karaf 2.2.6 also use Spring 3.1.x, it doesn't fix this constraint...
I'm interested in your all opinions.
Best,
Christian
On Sat, Mar 10, 2012 at 5:01 PM, wanggang1<[email protected]> wrote:
Hi Stefan,
When I used Camel 2.9.1, I saw Maven pulled down Spring 3.0.7-RELEASE as
dependencies. When you added Spring 3.1 explicitly, did it then cause any
conflict?
Thanks
--
View this message in context:
http://camel.465427.n5.nabble.com/Camel-and-Spring-3-1-tp5550625p5553179.html
Sent from the Camel - Users mailing list archive at Nabble.com.