我正在使用Camel 2.15.2,Spring 4.1.7.RELEASE,CXF 3.0.4和Junit 4.12进行开发。
当我运行以下测试时,加载Spring应用程序上下文失败:
当我运行以下测试时,加载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)
但是当我运行这个测试时,Spring 应用程序上下文成功加载:
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