21

テスト アプリケーションに Jetty を埋め込むことに成功しました。問題なくファイルを提供できます。Jetty が独自の Jar ファイル内にあるファイルを提供できるかどうかを知りたいです。

それが可能かどうか誰にもわかりますか?

4

4 に答える 4

38

例は、http: //docs.codehaus.org/display/JETTY/Embedding+Jetty の Jetty 埋め込みページにリストされています。

秘訣は、クラスパスの場所へのファイル URL を作成することです。

String webDir = this.class.getClassLoader().getResource("com/company/project/mywebdir").toExternalForm();

ServletContextHandler context = new ServletContextHandler();
context.setContextPath("/");
context.setResourceBase(webDir);
于 2009-10-23T17:28:46.850 に答える
5

春を方程式に入れると、それは非常に簡単です。そして、ここに行きます:

...

 WebAppContext webAppContext = new WebAppContext();
 webAppContext.setServer(サーバー);
 webAppContext.setContextPath("/");
 webAppContext.setResourceBase(new ClassPathResource("webapp").getURI().toString());

 server.addHandler(webAppContext);

 ....

これにより、jetty は jar ファイル内で必要な Web リソースを見つけます。

于 2010-06-08T08:51:36.343 に答える
-4

ハックかもしれませんが、JAR ファイルは実際には ZIP ではありませんか? (わからない)それらを一時フォルダーに解凍して、そこから提供していただけますか?

于 2009-09-22T22:36:34.883 に答える
-8

答えが見つかりました。それは Jetty ではなく、Winstone です。http://winstone.sf.net

于 2009-09-23T11:49:19.907 に答える