Hi

I dont think this is a road we want to go down. In the old days we had
a spring 2.x and 3.0 features.xml file and it was a pain to maintain.
We only had to do this because due limitations in features in Karaf
back then. Now Karaf is improved and IMHO not needed to be released
and maintained by Camel project. What about CXF and other libraries
where people use in Karaf and they want to use Spring 3.1.

The camel components is by default compatible with Spring 3.0 and 3.1.
There is only one API change in the Spring Test Framework which is
incompatible between spring 3.0 and 3.1, reported by Christian.

But the camel-test-spring is not an OSGi bundle, and neither available
as a feature. So people should be able to install any
of the Camel features and use Spring 3.1.

That said, its not a combo we have tested thoroughly and the default
unit tests / integration tests, is using Spring 3.0.
But there is so many combinations of frameworks and 3rd party JARs
that people can use. We cannot test all combos.

So in my mind upgrading Spring in Karaf should be something people can
do, and the install any features / bundle that can
use this Spring version range.

All the Camel bundles that uses Spring have (3,4] in the range.



On Mon, Mar 12, 2012 at 2:55 PM, Jean-Baptiste Onofré <[email protected]> wrote:
> Hi Claus,
>
> a "possibility" is to provide both Spring features version on Karaf 2.2.x.
>
> spring-3.0
>
> and
>
> spring-3.1
>
> It will allow us to "upgrade" Camel to support Spring 3.1 without waiting
> for Karaf 3.0.0.
>
> My 0.02$ ;)
>
> Regards
> JB
>
>
> On 03/11/2012 09:29 AM, Claus Ibsen wrote:
>>
>> Hi
>>
>> The irony is that an OSGi environment should be very modular and dynamic.
>> So upgrading Spring to 3.1, ought to be a use-case that should be
>> straight forward.
>>
>> The camel spring bundles have the spring version range [3.0,4.0) I
>> think, so they ought to be not limited to only 3.0.x.
>> I just checked the pom.xml in camel-spring has:
>> org.springframework.*;version="[3,4)",
>>
>>
>> On Sat, Mar 10, 2012 at 8:12 PM, Christian Müller
>> <[email protected]>  wrote:
>>>
>>> I will add a spring-3.1 profile in my local workspace and see how it
>>> works
>>> (we could have a Spring 3.0.x and a Spring 3.1.x build). If this works I
>>> will move on and see how we do it for Karaf...
>>>
>>> Best,
>>> Christian
>>>
>>> On Sat, Mar 10, 2012 at 7:07 PM, Christian Müller<
>>> [email protected]>  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.
>>>>>
>>>>
>>>>
>>
>>
>>
>
> --
> Jean-Baptiste Onofré
> [email protected]
> http://blog.nanthrax.net
> Talend - http://www.talend.com



-- 
Claus Ibsen
-----------------
FuseSource
Email: [email protected]
Web: http://fusesource.com
Twitter: davsclaus, fusenews
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/

Reply via email to