6
Grizzlyに、JAX-RSアプリケーション、Grizzlyおよび他のすべてのライブラリを含む.jar内の静的ファイルを提供したい。私はorg.glassfish.grizzly.http.server.StaticHttpHandler
を使用して静的ファイルを提供しています。.jar内からgrizzlyのStaticHttpHandlerを使って静的コンテンツを配信する
public class Main {
// ...
public static void main(String[] args) throws IOException, URISyntaxException {
final HttpServer server = startServer();
server.getServerConfiguration().addHttpHandler(
new StaticHttpHandler(getTemplatePath()), "/static");
System.in.read();
server.stop();
}
private static String getTemplatePath() throws URISyntaxException {
return Main.class.getClassLoader().getResource("templates/static").getPath();
}
}
私のIDEでアプリケーションを起動した場合にのみ動作します。 .jarをパックして実行すると、静的ファイルが見つかりません。
grizzlyのStaticHttpHandler
で.jar内の静的ファイルを提供することは可能ですか?そしてどうやって?
ありがとう、この質問を見てください、私はCLStaticHttpHandler場所を見つけることができますか?それはGrizzlyパッケージには含まれておらず、Googleでも3ページしか見つからない。 – deamon
Grizzlyバージョン2.3.3が付属しています。詳細はこちらをご覧ください:https://mytecc.wordpress.com/2013/06/06/grizzly-2-3-3-serving-static-http-resources-from-jar-files/ – alexey
オクラホマ、 Grizzlyは私のためにJAX-RSからの推移的な依存関係であるため、最新ではありません。 – deamon