3

私の質問が私のケースに固有のものであるとは想像できませんが、これまでにここで同様の質問がなされたことはありません。

ear を再パッケージ化せずにロギング レベルを簡単に変更できるように、.ear パッケージの外部で log4g.properties ファイルを指定できるようにしたいと考えています。実際、そのようにする最も差し迫った動機は、log4j プロパティ ファイルを耳の外側に配置するという私たちのグループの既に確立された慣習です。 、または耳の付け根など)は該当しません。

ear には、一連の Spring POJO に委譲してその動作を実現するステートレス EJB が含まれています。

私のグループの他のメンバーは、EAR 内に WAR ファイルをデプロイし、コンテキスト リスナーを使用して指定された (外部) パスから log4j プロパティ ファイルをロードすることだけを担当しているのを見てきました。パスは EAR の「外部」ですが、クラスパス上にあります。たとえば、フォルダー /config はクラスパス上にあり、WAR はコンテキスト リスナーを使用して /config/appname/log4j.properties から log4j.properties をロードします。

私にとって、唯一の目的が log4.properties ファイルをロードすることである WAR を使用することは、ハック/オーバーキルです。

もっと良い方法があるはずですよね?

4

1 に答える 1

3

log4j.properties を weblogic のクラスパスに追加し、war と ear の log4j.properties ファイルを削除するだけです。

これはコンソールで行うことができます。servername に移動 - 構成 - サーバーの開始

log4j.properties のディレクトリをクラスパスに追加します。アプリケーションは、耳の外側にある log4j.properties ファイルを使用します。

于 2010-02-01T06:09:09.907 に答える