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

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

If I try to upgrade to Spring 4.0.5 (while using Camel 2.13.1 and CXF 2.7.11), 
I get the following error:

{code}
java.lang.IncompatibleClassChangeError: Found interface 
org.springframework.test.context.TestContext, but class was expected
        at 
org.apache.camel.test.spring.CamelSpringTestContextLoaderTestExecutionListener.prepareTestInstance(CamelSpringTestContextLoaderTestExecutionListener.java:34)
        at 
org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:331)
        at 
org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:213)
        at 
org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:290)
{code}

I can fix this by changing to camel 2.14-snapshot, then checking out 
camel-test-spring and changing all "spring.version" placeholders to 
"spring4-version". Then installing it so it's used instead of the one in 
https://repository.apache.org/content/repositories/snapshots/. After that, I'm 
able to upgrade to CXF 3.0.0 if I change some package names.

So it seems like camel-test-spring is not Spring 4 compatible, yet.


> 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)

Reply via email to