You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Daniel Ford (JIRA)" <ji...@apache.org> on 2013/03/13 21:02:14 UTC

[jira] [Created] (CAMEL-6160) CamelSpringJUnit4ClassRunner ignores annotation based context configurations.

Daniel Ford created CAMEL-6160:
----------------------------------

             Summary: CamelSpringJUnit4ClassRunner ignores annotation based context configurations.
                 Key: CAMEL-6160
                 URL: https://issues.apache.org/jira/browse/CAMEL-6160
             Project: Camel
          Issue Type: Bug
          Components: camel-test
    Affects Versions: 2.10.4
         Environment: Windows 7, Java 1.7.0_17, Spring 3.2.1
            Reporter: Daniel Ford


In a Camel/Spring JUnit4 test case, if you specify:

@RunWith(CamelSpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = { FooCamelConfig.class })

then the context configuration (including the definition of CamelContext) defined in FooCamelConfig.java, using Java Annotations, will be ignored.  If you change to use SpringJUnit4ClassRunner, then the configuration will be processed.

The problem is in the two implementations of the method "loadBeanDefintions()"  in the class CamelSpringTestContextLoader.  They both exclusively use XmlBeanDefinitionReader to load bean definitions into the context, so no beans defined using annotations are ever read/loaded.

If you use the SpringJUnit4ClassRunner, then it includes the use of AnnotationConfigContextLoader which, in turn, uses AnnotatedBeanDefinitionReader to read/load beans defined with annotations.




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira