1

次の構造の EAR があります。

myapp.ear
...META-INF
......application.xml
...lib
......common.jar
......specialBeanlib.jar
...myejb.jar
...mywar1.war
...mywar2.war

ご覧のとおり、common.jar と specialBeanlib.jar は EAR lib フォルダーにあります。

myejb.jar には、サービス クラスが含まれています。
mywar1.war には user-gui が含まれています。
mywar2.war には admin-gui が含まれています。

ejb モジュールと war モジュールは別々の Maven プロジェクトからビルドされ、application.xml ファイルで参照されます。ファイル specialBeanlib.jar は、両方の Web プロジェクトで提供された依存関係として参照され、ejb プロジェクトでは通常の依存関係として参照されるため、EAR lib フォルダーに格納されます。明示的に独自の ejb モジュールであってはなりません。

質問:@ApplicationScopedファイルspecialBeanlib.jarにBean などのBeanを含めることはできますか?@Inject

4

1 に答える 1

0

大丈夫なはずです。コンパイル時に、Mavenの依存関係としてspecialBeanlib.jarを指定するため、mywar1およびmywar2モジュールのコンパイル中にクラスパスに表示されるはずです。実行中、speicalBeanlib.jarはwarクラスローダーの親クラスローダーにあるear \ libフォルダーにあるため、Beanクラスも正常にロードされる必要があります。

于 2013-02-16T19:38:54.280 に答える