JSF 2.0 と Spring 3.1 を使用してアプリケーションを構築しています。春のアプリケーションコンテキストファイルでは、プロパティXMLOutputFilePathを設定しています
Spring ApplicationContextFile :
<bean id="placeholderConfig"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>/WEB-INF/classes/config.properties</value>
</list>
</property>
</bean>
<bean id="DetailsBean"
class="sections.DetailsBeanFactory"
factory-method="createInstance">
<constructor-arg index="0" value="${XMLOutputFilePath}" />
</bean>
アプリケーションが初めてデプロイされるときに、config.property ファイルからXMLOutputFilePathを読み取っています。
JSF Bean コード:
for (String filePath : _filePathList) {
System.setProperty("XMLOutputFilePath", filePath);
System.out.println("For file : " + filePath);
_context = new ClassPathXmlApplicationContext("WEB-INF/applicationContext.xml");
//Some code here
}
JSF Bean クラスで 2 つのことをしたかったのです。
- ファイル パスのリストがあり、この新しいパスを使用して、新しいファイル パスごとにXMLOutputFilePathの値を変更したいと考えていました。(コードで見ることができます..)
- この新しいプロパティ値を使用してコンテキストを再読み込みします。
私はこの方法でそれをやろうとしていますが、うまくいきません.* XMLOutputFilePath **の値を変更していないだけでなく、コンテキストファイルを読み取っていません.
これどうやってするの?