Я работаю с Camel 2.15.2, Spring 4.1.7.RELEASE, CXF 3.0.4, Junit 4.12.Junit - загрузка Spring XML config через аннотации
Когда я запускаю следующий тест, загружая контекст Spring приложения не удается:
@RunWith(CamelSpringJUnit4ClassRunner.class)
@BootstrapWith(CamelTestContextBootstrapper.class)
@ContextConfiguration(locations=
{
"classpath:com/me/someFile.xml",
"classpath:META-INF/spring/someFile.xml"
})
public class MyRouteTest extends CamelTestSupport
{
//...
}
Вот исключение я получаю:
Caused by: java.lang.IllegalArgumentException: Cannot find RouteContext with id someRoute
at org.apache.camel.model.RouteContextRefDefinitionHelper.lookupRoutes(RouteContextRefDefinitionHelper.java:65)
Но когда я запускаю этот тест, в Весенний прикладной контекст успешно загружается:
public class MyRouteTest extends CamelSpringTestSupport
{
@Override
protected AbstractApplicationContext createApplicationContext()
{
return new ClassPathXmlApplicationContext(new String[]
{
"classpath:com/me/someFile.xml",
"classpath:META-INF/spring/someFile.xml"
});
}
//...
}
Почему это происходит в первом случае?
Не эти два способа загрузить эквивалент контекста приложения Spring?
Вы пытались не расширять 'CamelTestSupport' при использовании аннотаций? – Ralf
@ Ralf Нет, потому что 1. Я хотел бы использовать многие из своих классных методов в своем тесте 2. Если это имеет значение, это, по-моему, все еще не является ожидаемым поведением. – rapt