2012-03-14 6 views
0

getClass().getResourceAsStream()を使用して設定ファイルフォームのアプリケーションクラスパスをロードしています。設定ファイルをロードするアプリケーションクラスパス

このファイルは、apache tomcat serverを使用してアプリケーションを起動するとロードされます。

サーバが実行中に設定ファイルを少し変更すると、変更が反映されません。

アプリケーションの実行中に変更が必要な場合があります。 変更された後にApache Tomcatが設定ファイルをロードする方法はありますか?

答えて

1

あなたはファイルを再読していると仮定しますが、変更したにもかかわらず同じ内容が表示されていますか?

今のところ、ファイルをポーリングするたびに内容を印刷するので、a)ファイルがポーリングされており、b)内容が変更されていないことがわかります。

別の可能性として、アプリケーションをビルドすると、設定ファイルはいくつかの場所、たとえば複数のJARまたはファイルシステム上で実行することができます。あなたのクラスパスに応じて、あなたが変更しているファイルがあなたが読んでいるものではないかもしれません。つまり、クラスパスの最初のディレクトリです。

EDIT:ファイルがロードされている場所を示すので、URL getClass().getResource(fileName)をログに記録できますか?

+0

私がアプリケーションをビルドすると、設定ファイルはtomcat \ webapps \ projName \ WEB-INF \ classes \ config-fileにあります。私はアプリケーションが上記のファイル形式を取っていると確信していますが、私の問題は、ファイルを一度だけ読み込んでいて、呼び出しを行うたびにファイルを読み返していないことです。 – aswin

+0

私の編集を試すことはできますか? –

+0

私はur提案を試み、私が得た結果はfile:/ C:/apache-tomcat-7.0.23-64bit/apache-tomcat7.0.23/webapps/proj/WEB-INF/classes/image_manifest.xmlです。それは私が設定ファイルを変更したのと同じパスです – aswin

関連する問題