2.1.3 javax.ejbパッケージに含まれるアノテーションのサポート範囲

javax.ejbパッケージのアノテーションの適用範囲を説明します。ここでは,コンポーネントごとに記述できるアノテーションを説明します。

<この項の構成>
(1) WARファイル(Servlet 2.5対応)
(2) WARファイル(Servlet 2.4対応)
(3) EJB-JARファイル(EJB3.0対応)
(4) EJB-JARファイル(EJB2.1対応)
(5) ライブラリJAR(サーブレット/JSP)
(6) ライブラリJAR(Enterprise Bean/例外クラス/その他のクラス)

(1) WARファイル(Servlet 2.5対応)

WARファイルに記述できるアノテーションの一覧を示します。

表2-10 WARファイル(Servlet 2.5対応)に記述できるアノテーション(javax.ejbパッケージ)

アノテーション名Servlet仕様JSP仕様その他のクラス
サーブレットサーブレットフィルタイベントリスナJSPファイルタグハンドラタグライブラリイベントリスナ
クラシックタグハンドラシンプルタグハンドラ
@EJB×
@EJBs×
(凡例)
○:対応する。
×:アプリケーションサーバでは対応しない。
-:標準仕様で対応していない。

(2) WARファイル(Servlet 2.4対応)

WARファイルに記述できるアノテーションの一覧を示します。

表2-11 WARファイル(Servlet 2.4対応)に記述できるアノテーション(javax.ejbパッケージ)

アノテーション名Servlet仕様JSP仕様その他のクラス
サーブレットサーブレットフィルタイベントリスナJSPファイルタグハンドラタグライブラリイベントリスナ
クラシックタグハンドラシンプルタグハンドラ
@EJB※1※2×
@EJBs※1×
(凡例)
○:対応する。
×:アプリケーションサーバでは対応しない。
-:標準仕様で対応していない。
注※1
アプリケーションサーバでは,EJB2.1仕様,またはServlet2.4仕様のアプリケーションでもサポートしています。
注※2
Servlet2.4仕様のWebアプリケーションではメソッドおよびフィールドに対するDIができません。

(3) EJB-JARファイル(EJB3.0対応)

EJB-JARファイルに記述できるアノテーションの一覧を示します。

表2-12 EJB-JARファイル(EJB3.0対応)に記述できるアノテーション(javax.ejbパッケージ)

アノテーション名Enterprise Bean例外クラスその他のクラス
インタフェースSession BeanEntity BeanMessage-driven Beanインターセプタ
デフォルトインターセプタ以外デフォルトインターセプタ
@ApplicationException
@EJB×
@EJBs×
@Init※2
@Local
@LocalHome
@Remote
@RemoteHome
@Remove※2
@Stateful※2
@Stateless※1
@Timeout※1×
@TransactionAttribute×
@TransactionManagement×
(凡例)
○:対応する。
×:アプリケーションサーバでは対応しない。
-:標準仕様で対応していない。
注※1
Stateless Session Beanの場合にだけ使用できます。
注※2
Stateful Session Beanの場合にだけ使用できます。

(4) EJB-JARファイル(EJB2.1対応)

EJB-JARファイルに記述できるアノテーションの一覧を示します。

表2-13 EJB-JARファイル(EJB2.1対応)に記述できるアノテーション(javax.ejbパッケージ)

アノテーション名Enterprise Bean例外クラスその他のクラス
インタフェースSession BeanEntity BeanMessage-driven Bean
@EJB×
@EJBs×
(凡例)
○:対応する。
×:アプリケーションサーバでは対応しない。
-:標準仕様で対応していない。
注※
アプリケーションサーバでは,EJB2.1仕様,またはServlet2.4仕様のアプリケーションでもサポートしています。

(5) ライブラリJAR(サーブレット/JSP)

ライブラリJARのサーブレットまたはJSPに記述できるアノテーションの一覧を示します。

表2-14 ライブラリJAR(サーブレット/JSP)に記述できるアノテーション(javax.ejbパッケージ)

アノテーション名Servlet仕様JSP仕様
サーブレットサーブレットフィルタイベントリスナJSPファイルタグハンドラタグライブラリイベントリスナ
クラシックタグハンドラシンプルタグハンドラ
@EJB×
@EJBs×
(凡例)
○:対応する。
×:アプリケーションサーバでは対応しない。
-:標準仕様で対応していない。

(6) ライブラリJAR(Enterprise Bean/例外クラス/その他のクラス)

ライブラリJARのEnterprise Bean,例外クラス,またはその他のクラスに記述できるアノテーションの一覧を示します。

表2-15 ライブラリJAR(Enterprise Bean/例外クラス/その他のクラス)に記述できるアノテーション(javax.ejbパッケージ)

アノテーション名Enterprise Bean例外クラスその他のクラス
インタフェースSession BeanEntity BeanMessage-driven Beanインターセプタ
@ApplicationException
@EJB
@EJBs
@Local
@Remote
(凡例)
○:対応する。
-:標準仕様で対応していない。