2
我创建一个由骆驼路线组成的ServiceMix模块。如何在测试基于CamelSpringTestSupport的测试期间设置属性值
在我的beans.xml,我有:
<osgix:cm-properties id="companyProps"
persistent-id="com.company.integration">
</osgix:cm-properties>
<ctx:property-placeholder location="
file:${karaf.base}/etc/com.company.integration.cfg
" />
这意味着我可以使用从文件属性,如定义的其他项目:
<http-conf:conduit name="*.http-conduit">
<http-conf:authorization>
<security:UserName>${username}</security:UserName>
<security:Password>${password}</security:Password>
</http-conf:authorization>
</http-conf:conduit>
我还可以在访问属性我Java类,如果我创建一个bean并注入它:
<bean id="myConfig" class="com.company.integration.MyConfig">
<osgix:managed-properties persistent-id="com.company.integration" />
</bean>
问题是当我写我的单元te STS。目前,我正在使用具有测试值的beans.xml副本,但我当然想使用真正的beans.xml并为属性提供值。
public class myTest extends CamelSpringTestSupport
{
@Override
protected AbstractXmlApplicationContext createApplicationContext()
{
return new ClassPathXmlApplicationContext(new String[] {
"/META-INF/spring/beans.xml"
, "/META-INF/spring/test.xml"
});
}
}
我想摆脱test.xml,最好从属性文件加载测试属性。 我已经看到了PropertyComponent一些参考,但是我无法得到这个:-(
工程就像一个魅力! 谢谢! :) – Brimstedt 2012-04-04 19:38:24