7
これはかなり簡単なはずですが、何らかの理由で私が試したすべてのものは、ウェブブラウザに接続すると「見つからない」というエラーを出すようです。Jettyでjarfileから静的コンテンツを提供していますか?
私は単一の静的コンテキストを持っていますが、ResourceBaseのために私は 'file:jar:/ path/to/myjar!/。' ...というアイデアがありますか?
これはかなり簡単なはずですが、何らかの理由で私が試したすべてのものは、ウェブブラウザに接続すると「見つからない」というエラーを出すようです。Jettyでjarfileから静的コンテンツを提供していますか?
私は単一の静的コンテキストを持っていますが、ResourceBaseのために私は 'file:jar:/ path/to/myjar!/。' ...というアイデアがありますか?
は
ClassLoader classLoader =
Thread.currentThread().getContextClassLoader();
if (classLoader == null) {
classLoader = getClass().getClassLoader();
}
InputStream stream = classLoader.getResourceAsStream(name);
あなたのアプローチは、絶対パスを前提とし、このようなクラスローダからリソースをロードしようとサーバーが展開されるとき、それは本当ではないかもしれません。 jarは別のJAR(WAR)または一時ディレクトリに存在する可能性があります。
私はすぐにパスを変更することができます。私はこれを動作させることができるかどうかを確認しています。静的な.htmlファイルだけをJARからサーブレットをロードしません。 –
あなたの構文が正しいとは思わない。 jar:file:/path/to/my.jar!/ package/file Windowsの場合は、ドライブ文字も必要な場合があります。 –