4.4. EJB3 サービスのパッケージとデプロイ


EJB3 bean クラスは通常の JAR ファイルでパッケージされます。標準設定ファイル (セッション bean は ejb-jar.xml、エンティティ bean は persistence.xml など) は、JAR の中にある META-INF ディレクトリにあります。JBoss AS ではスタンドアローンサービスとして、あるいはエンタープライズアプリケーションの一部 (EAR アーカイブ内) として、EJB3 bean をデプロイすることができます。この章では、この2つのデプロイメントオプションについて説明します。

4.4.1. EJB3 JAR のデプロイ

JAR ファイルを JBOSS_DIST/server/default/deploy/ ディレクトリに置くと、自動的にサーバーがピックアップし処理を行います。JAR ファイルに定義されている EJB3 bean はすべて、MyBean/local など JNDI 名を使ってサーバーの内部あるいは外部にデプロイされている他のアプリケーションにて利用できるようになります。この MyBean は、セッション bean の実装クラス名です。このデプロイメントは、JBOSS_DIST/server/default/ejb3.deployer/ の JBoss EJB3 デプロイヤーを使い行われます。デフォルトの EJB3 エンティティマネージャーを設定する際に前述した、META-INF/persistence.properties ファイルは、EJB3 デプロイヤーの中に置かれています。
EJB3 デプロイヤーは自動的にクラスパスの JAR をスキャンし、EJB3 アノテーションを検索します。EJB3 アノテーションを持つクラスが見つかった場合、EJB3 サービスとしてこれらのクラスをデプロイします。しかし、多数の JAR がデプロイされている大規模なアプリケーションをお使いの場合は、クラスパスにあるすべての JAR をスキャンするのに大変時間がかかります。JBOSS_DIST/server/default/ejb3.deployer/META-INF/jboss-service.xml ファイルでは、EJB3 デプロイヤーに EJB3 bean が含まれていないとわかっている JAR を無視するよう指示することができます。JBoss AS で同梱されている EJB 以外の JAR ファイルは jboss.ejb3:service=JarsIgnoredForScanning MBean サービスにすでにリストアップされています。
  ... ...
  <mbean code="org.jboss.ejb3.JarsIgnoredForScanning" 
         name="jboss.ejb3:service=JarsIgnoredForScanning">
      <attribute name="IgnoredJars">
         snmp-adaptor.jar,
         otherimages.jar,
         applet.jar,
         jcommon.jar,
         console-mgr-classes.jar,
         jfreechart.jar,
         juddi-service.jar,
         wsdl4j.jar,
         ... ...
         servlets-webdav.jar
      </attribute>
   </mbean>
  ... ...

サーバーがスキャンで時間を無駄にしないように、お使いのアプリケーションにある EJB3 以外の JAR をこのリストに追加することができます。こうすることで、場合によってはアプリケーションの起動時間が大幅に短縮されることがあります。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る