2017-01-05 23 views
8

今後のプロジェクトで使用するライブラリを作成したいと思いますが、他のEJBなどを参照するそのライブラリにもEJBを含めたいと思います。それをする最善の方法は何ですか?この場合の依存関係の定義方法を教えてください。私は注釈でそれらを定義すると思った。ライブラリのユーザが他の依存関係を設定したい場合、彼はプロジェクトのejb-jar.xmlの中でそれらを上書きすることでそれを可能にします。過去にこのようなことをした人はいますか? Eclipseで開発するときはどうしたらいいですか?ライブラリ内のEJB - EJBの再利用

基本的に私の問題は、すべてのプロジェクトに含めるejb-jarを単純に作成すれば、ejbコンテナが自分のインスタンスをインスタンス化するということです。私のライブラリに含まれているMDBのすべてが必要ではなくても、MDBの一部だけが必要な場合でも、展開時にMDBを使用できます。

MDBを注釈付きのEJBとして、またはejb-jar.xml内で定義するのではなく、依存関係のみを定義するソリューションですか?

セッションBeanについてはどうですか?プロジェクト内でそれらを使用しなくても自動的にインスタンス化されますか?

+1

これが最善の方法であるかどうかは分かりませんが、私はすべてを '.jar'としてパッケージ化してから、それをmaven依存関係として組み込んでいました。次に、必要に応じて '.jar'でEJBにアクセスできます。繰り返しますが、それが最善の方法であるかどうかはわかりませんが、試してみたければオプションになります。 –

+1

ステートレスBeanは、使用しなくてもインスタンス化できます。 SLSBはプールされる必要があります。したがって、要求がなくても事前にインスタンスを作成することができます。 – user3714601

+0

私が覚えている限り、市場にあるほとんどのアプリケーションサーバーでは、初期サイズとしてゼロを使用してプールを構成できます。これはあなたの問題を解決しますか? – Leonardo

答えて

2

EARファイル。あまり一般的ではありませんが、ライブラリとその依存関係をEARファイルに含めて配布することができます。 私がしたいのは、依存関係のドキュメント(例えば、MavenのPOMファイルまたはivyのxmlファイル)とともに、独自のJarファイルにライブラリを配布することです。いずれにしても、依存マネージャが必要です。

すべての依存関係が展開された太ったJARファイルを作成するオプションもあります。私は本当にそれが好きではありません。依存関係を含める必要がある場合は、EARファイルを使用します。

関連する問題