jarからプロパティファイルをロードする必要があります。 jarファイルはwarファイルに含まれています。ここでは、次のような構造warファイルにパッケージ化されたjarファイルからリソースをロードする方法は?
ROOT.war
WEB-INF
lib
my.jar
here my.jar has following structure
my.jar
com
test
myservlet.class
WEB-INF
test.property
は今、私は私のサーブレットの1に次のコードを書かれているされています
InputStream stream = getServletContext().getResourceAsStream("/WEB-INF/test.properties");
Properties prop = new Properties();
prop.load(stream);
をが、コードの上に、私はヌルとしてストリームを得ました。 ROOT.war/WEB-INFにプロパティファイルを置くとうまくいきます。 getResourceAsStream内のパスがコンテキストルート内のリソースを検索するよりも「/」で始まる場合、私は公正なアイデアを持っています。しかし、再びrootアプリケーションのWEB-INF/libにあるjarファイルにあるリソースを読み取ることはできますか?
おかげ&よろしく、 アミットパテル
... "WEB-INF/test.property"をそのまま使用してください。 –
@bkailでも可能ですが、 'WEB-INF'フォルダを使用する理由はありません。なぜなら、これはサーブレットコンテキストではアクセスできないからです。また、プレーンなバニラJARファイルにWAR固有のフォルダ規約を置くことは意味がありません。 – BalusC
合意した、あなたの答えが間違っていたことを暗示するつもりはありませんでした。 JAR構造を変更する場合にOPを別のオプションで提供するだけでは、何らかの理由で困難または不可能です。 –