私の質問が私のケースに固有のものであるとは想像できませんが、これまでにここで同様の質問がなされたことはありません。
ear を再パッケージ化せずにロギング レベルを簡単に変更できるように、.ear パッケージの外部で log4g.properties ファイルを指定できるようにしたいと考えています。実際、そのようにする最も差し迫った動機は、log4j プロパティ ファイルを耳の外側に配置するという私たちのグループの既に確立された慣習です。 、または耳の付け根など)は該当しません。
ear には、一連の Spring POJO に委譲してその動作を実現するステートレス EJB が含まれています。
私のグループの他のメンバーは、EAR 内に WAR ファイルをデプロイし、コンテキスト リスナーを使用して指定された (外部) パスから log4j プロパティ ファイルをロードすることだけを担当しているのを見てきました。パスは EAR の「外部」ですが、クラスパス上にあります。たとえば、フォルダー /config はクラスパス上にあり、WAR はコンテキスト リスナーを使用して /config/appname/log4j.properties から log4j.properties をロードします。
私にとって、唯一の目的が log4.properties ファイルをロードすることである WAR を使用することは、ハック/オーバーキルです。
もっと良い方法があるはずですよね?