I found a solution using seanizer and springmodule
<bean id="configuration" class="org.springmodules.commons.configuration.CommonsConfigurationFactoryBean"> <property name="configurations"> <list> <bean class="org.apache.commons.configuration.XMLConfiguration"> <constructor-arg type="java.net.URL" value="file:cfg.xml" /> </bean> </list> </property> </bean> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="properties" ref="configuration"/> </bean> <bean id="testConfig" class="uvst.cfg.TestConfiguration"> <property name="domain" value="${some.prop}"></property> </bean>
class TestConfiguration
public class TestConfiguration { private String domain; public String getDomain() { return domain; } public void setDomain(String domain) { this.domain = domain; } }
jUnit Testclass
@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration( { "/applicationContextTest.xml" }) public class ApacheCommonCfg2Spring extends AbstractJUnit4SpringContextTests { private TestConfiguration tcfg; @Test public void configuration(){ tcfg = this.applicationContext.getBean("testConfig", TestConfiguration.class); System.out.println(tcfg.getDomain()); } }
Springmodule is quite old, it seems that it is no longer supported, but works with Spring 3.0.3.
Feel free to copy and paste!
source share