3.2.9. EJB 2.x の変更

3.2.9.1. EJB 2.x を使用するアプリケーションの更新

JBoss Enterprise Application Platform 6 は EJB 2.x へのサポートを提供しますが、一部コードの変更が必要で、サーバーを完全なプロファイルで起動する必要があります。

手順3.26 JBoss Enterprise Application Platform 6 で EJB 2.x を起動する

  1. JNDI 名前空間の新しいルールを使用するようコードを変更する

    EJB 3.0 と同様に、EJB 2.x でも完全な JNDI プレフィックスを使用する必要があります。新しい JNDI 名前空間ルールやコード例の詳細は 「アプリケーションの JNDI 名前空間名の更新」 を参照してください。
    以前のリリースから JNDI 名前空間を更新する方法を表す例は 「以前のリリースにおける JNDI 名前空間の例、また JBoss Enterprise Application Platform 6 での名前空間の指定方法」 にあります。
  2. JBoss AOP インターセプターの置換

    JBoss AOP (Aspect Oriented Programming) は JBoss Enterprise Application Platform 6 には含まれていません。以前のリリースでは、JBoss AOP は EJB コンテナによって使用されていましたが、Enterprise Application Platform 6 では EJB コンテナは新しいメカニズムを使用します。アプリケーションが JBoss AOP を使用する場合、次のようにアプリケーションコードを変更する必要があります。

    • ejb3-interceptors-aop.xml で設定された標準的な EJB3 設定は、サーバー設定ファイルで設定されるようになりました。スタンドアロンサーバーの場合、このファイルは standalone/configuration/standalone.xml ファイルになります。サーバーが管理ドメインで実行されている場合は domain/configuration/domain.xml ファイルになります。
    • AOP インターセプターを EJB レイヤーへ統合するアプリケーションは、 EJB3 インターセプターと CDI を使用するよう再設計する必要があります。サーバー側のインターセプターは EJB3 インターセプターへ変更することができますが、Enterprise Application Platform 6 ではクライアント側のインターセプターがありません。
  3. jboss-web.xml ファイル記述子の変更

    <ejb-ref> に対する <jndi-name> を変更し、新しい JNDI 完全修飾ルックアップ形式を使用するようにします。
  4. jboss.xml デプロイメント記述子ファイルの置換

    Java Enterprise Edition (EE) によって定義される ejb3-jar.xml デプロイメント記述子によって提供される機能を上書きしたり追加するため、jboss.xmljboss-ejb3.xml デプロイメント記述子に置き換えられました。この新ファイルは jboss.xml との互換性がないため、jboss.xml はデプロイメントで無視されます。
  5. 完全プロファイルでのサーバーの起動

    EJB 2.x には Java Enterprise Edition 6 の完全プロファイルが必要となります。完全プロファイルで JBoss Enterprise Application Platform 6 を起動するには、サーバーの起動時に引数 -c standalone-full.xml をコマンドラインに渡します。