0

私はジープログラミングを進めています。基本的なチュートリアルから、HttpServlet を拡張するクラスでアプリケーション ディレクトリを読みたい場合は、getServletContext().getRealPath(relativePath) を使用します。しかし、私の場合、シリアル化の目的でジャージーを使用しました。サーブレットは HttpServlet を拡張していません。画像を見てくださいここに画像の説明を入力。私は主にフロント プログラマーなので、愚かな質問かもしれませんが、webapp のさまざまな静的リソースへのパスを解決するための単純な static/util メソッドが必要です。私はTomcatでそれを実行します。画像のような唯一無二のサーブレット。

4

2 に答える 2

2

仕様 (JAX-RS 1.1、ch. 6.1) に従って、これをリソース クラスに追加します。

@Context
private ServletContext application;

完全修飾名は次のとおりです。

import javax.servlet.ServletContext;
import javax.ws.rs.core.Context;
于 2013-10-29T11:33:25.090 に答える
0

ディレクトリへの絶対パスには、次のwebApp/WEB-INF/classesようにアクセスできます。

URL resource = getClass().getResource("/");
String path = resource.getPath();

これにより、次のような絶対パスが返されます。

/C:/SERVERS/x/y/x/yourApp/WEB-INF/classes

これから、webapp ディレクトリへのパスを取得できます。

path = path.replace("WEB-INF/classes/", "");

静的リソースが の直下にwebappある場合、次のようにしてそのリソースにアクセスできます。

path = path + "resource_name"; 
于 2013-10-29T11:32:50.767 に答える