JBoss4.0.1 と Struts2.1.6 を使用しています
いくつかの構成ファイル(フォルダーWEB-INF/config内のappConfig.xml)を持つアプリケーションがあります。この構成ファイルには、読み取る他のファイル (other.xml、some.xml など) の相対パスが含まれています。アプリケーションは default/deploy 内で .war としてデプロイされます
構成ファイルを読み取るユーティリティ パッケージがあります。utility.jar を default/lib 内にデプロイしました
のcontextInitialized
メソッドで、このファイルをServletContextListener
読み取り、すべてのコンテキスト相対パスをロードするユーティリティ クラスに渡しappConfig.xml
ます。IOStream
appConfig
これらのファイルを今すぐ読むにはどうすればよいですか? 入力ストリームを作成しようとすると、NULL が返されるためです。
ユーティリティクラス内で次のことを試しました。
read メソッドは ServletContextListener の contextInitialized メソッド内から呼び出されます
public void read(){
this.getClass().getClassLoader.getResourceAsStream("/WEB-INF/config/some.xml");
}
public void read(ClassLoader cl){
cl.getResourceAsStream("/WEB-INF/config/some.xml"); --> Null
cl.getResourceAsStream("/../config/some.xml"); --> Null
cl.getResourceAsStream("../config/some.xml"); --> Null
}
public void read(ServletContext ct){
ct.getResourceAsStream("/WEB-INF/config/some.xml");.
ct.getResourceAsStream("/../config/some.xml"); --> Null
ct.getResourceAsStream("../config/some.xml"); --> Null
}