camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matt Raible (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CAMEL-7074) Upgrade to spring 4.x
Date Thu, 26 Jun 2014 15:42:26 GMT

    [ https://issues.apache.org/jira/browse/CAMEL-7074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14044771#comment-14044771
] 

Matt Raible commented on CAMEL-7074:
------------------------------------

I agree it's probably best not to require Spring 4 in a point release. For Camel 3.0, it might
be doable. In the meantime, I don't think it's a good idea to prevent folks from using Spring
4. I think the easiest way forward is to create two modules: camel-test-spring and camel-test-spring3.
The former compiles against Spring 4 and the latter against Spring 3. You could switch it
so camel-test-spring defaults to Spring 3, but camel-test-spring4 doesn't seem to be forward-looking,
as you hopefully won't need a camel-test-spring5. 

I've made this change in a fork and it works in my project. I can upgrade to Camel 2.14-SNAPSHOT
and CXF 3.0 with Spring 3.2.8 (by using camel-test-spring3). I can also upgrade to Spring
4 if I use the upgraded camel-test-spring.

Here's a pull request that has this change: https://github.com/apache/camel/pull/199

> Upgrade to spring 4.x
> ---------------------
>
>                 Key: CAMEL-7074
>                 URL: https://issues.apache.org/jira/browse/CAMEL-7074
>             Project: Camel
>          Issue Type: Task
>          Components: camel-spring
>            Reporter: David J. M. Karlsen
>            Assignee: Willem Jiang
>             Fix For: 2.14.0
>
>
> Upgrade to spring4.
> There is a non-backwards compatible change in spring 4.x which will cause:
> {noformat}
> java.lang.IncompatibleClassChangeError: Found interface org.springframework.test.context.TestContext,
but class was expected
>         at org.apache.camel.test.spring.CamelSpringTestContextLoaderTestExecutionListener.prepareTestInstance(CamelSpringTestContextLoaderTestExecutionListener.java:35)
>         at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:326)
>         at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:212)
>         at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
>         at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>         at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
>         at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:232)
>         at org.apache.camel.test.junit4.CamelSpringJUnit4ClassRunner.runChild(CamelSpringJUnit4ClassRunner.java:37)
>         at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
>         at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
>         at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
>         at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
>         at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
>         at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
>         at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:71)
>         at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
>         at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:175)
>         at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
>         at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
>         at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
>         at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
>         at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
>         at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:
> {noformat}
> due to https://jira.springsource.org/browse/SPR-7692



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message