2

複数の Web アプリケーションで使用できる共通のアーティファクトを開発しています。開発者は、リスナー クラスを web.xml に追加するだけです。私のリスナーでは、コードが実行されている Web アプリケーション名を取得する必要があります。

getServletContextName() で名前が付けられますが、この名前は web.xml でコード化された表示名です。display-name は任意なので信頼できないと思います。そこで、実際の Web アプリケーション名を取得したいと思います。これを行う方法はありますか?

ご覧いただきありがとうございます。

4

2 に答える 2

3

このコードで試してください

String ApplicationName = ((HttpServletRequest) request).getContextPath()
                    .replace("/", "");
于 2015-07-13T10:51:36.597 に答える
-1

私はこれを行う方法を見つけました....

new java.io.File(context.getRealPath("/")).getName()

上記は Web アプリ名、つまり WAR 名を示します。

Hardik、これを調べてくれてありがとう。

MaVRoSCy、表示名は何でもかまいません。Web アプリケーション名である必要はありません。たとえば、すべての Maven Web プロジェクトには、デフォルトの表示名が「アーキタイプによって作成された Web アプリケーション」として表示されますが、これは取り上げたくありません。

于 2012-09-07T12:57:28.387 に答える