質問
私はちょうどEJBSを読み始めました。
私がそれに挑戦していても、私はそれらについて聞いたことに基づいていくつかの質問があります。
- EJBを使用するアプリケーションは常に耳として展開する必要がありますか?
- EJBを含むアプリケーションは、Eclipseを使用してANTを使用せずに他のJava Webプロジェクトと同様に展開できますか?
解決
1.EJBを使用したアプリケーションは、常に耳として展開する必要がありますか?
いいえ。
EJBモジュールは瓶に組み立てられ、命名規則としてmyApp-ejb.jarと呼びます。
これには、EJB 2.xのEJB-Jar.xmlと呼ばれる展開記述子ファイルと同様に、EJBコードが含まれています。 EJB 3.0では、コード自体には、サーバーが展開を理解するために必要な注釈が含まれているため、展開記述子はオプションです。展開記述子/注釈は、JNDI、DataSource検索などのEJB展開に必要な基本的なものをカバーしています。
複数のEJBモジュールと他のWebモジュール(戦争)のコレクションが一緒になります 耳. 。 @isaacが指摘したように、耳には戦争ファイルを含める必要はありません。耳ファイルの唯一の条件は、あらゆる種類の少なくとも1つのJ2EEモジュールを含めることです。
耳に必要です META-INF/application.xml
これには、耳に存在するすべてのEJBジャーと戦争がリストされています。したがって、通常の場合の複数のEJBモジュールがある場合、耳に行きます。したがって、通常の展開は耳のものです。
このファイルの例を以下に示します http://download.oracle.com/docs/cd/b32110_01/web.1013/b28221/undejdev003.htm. 。これはあなたが読むのに良い記事です。
<application>
<display-name>master-application</display-name>
<module>
<ejb>ejb1.jar</ejb>
</module>
<module>
<ejb>ejb2.jar</ejb>
</module>
<module>
<java>appclient.jar</java>
</module>
<module>
<web>
<web-uri>clientweb.war</web-uri>
<context-root>webapp</context-root>
</web>
</module>
<module>
<ejb>ejb3.jar</ejb>
</module>
2.EJBを含むアプリケーションは、Eclipseを使用してANTを使用せずに他の他のJava Webプロジェクトと同様に展開することができますか
はい、耳/瓶が組み立てられると、サーバーに展開できます(必要に応じてEclipseを介して)。
ANTは、EJBコードの実際の展開とは何の関係もないビルドツールです。瓶をコンパイルして組み立てるために使用されます。これは、Eclipseからも実行できます。
ここ それを行うチュートリアルです.
参考文献