1

これはばかげた質問かもしれません:

現在、Webアプリケーションに必要なVM引数がいくつかあります。それらは次のようなものです:

-Dcom.company.custom.var='test'

そして、私は次のコードでそれらにアクセスします:

System.getProperty("com.company.custom.config")

それらをtomcatxmlファイル(server.xml、context.xmlなど)の1つに移動したいのですが、どうすればよいかわかりません。

だから私の質問は2つの部分です。これらの変数をxmlのどこに(そしてどのように)配置する必要があり、コードでそれらにアクセスするにはどうすればよいですか?

事前に感謝し、これがすでに回答されている場合は申し訳ありません。このトピックに関する私のsearch-fuは私に失敗しました。

4

2 に答える 2

2

これらがアプリ固有の構成アイテムである場合、その標準的な場所は<context-param>inweb.xmlです。このようなもの:

<context-param>
    <param-name>myvar</param-name>
    <param-value>value</param-value>
</context-param>

を使用してコードからこれらの値にアクセスできますServletContext#getInitParameter(String)。サーブレットの内部から、次のように記述できます。

String myvar = getServletContext().getInitParameter("myvar");
于 2012-09-11T14:57:01.830 に答える
1

公式には、すべてのJVMオプションはsetenv.sh(Unixの場合)またはsetenv.bat(Windowsの場合)のいずれかになります。このファイルはデフォルトではTomcatに存在しませんが、作成すると、起動スクリプトによって取得されます。

代わりにこれを使用する必要がある理由は、 Tomcatのバージョンごとに変更さserver.xmlれる可能性があるが、 (または.bat)は完全にカスタムであるためです。server.xmlsetenv.sh

ご指摘のとおり、この値を読み取るには、を使用しますSystem.getProperty(...)

于 2012-09-11T21:33:30.807 に答える