Hitachi

Cosminexus V11 アプリケーションサーバ リファレンス API編


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

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

〈この項の構成〉

(1) WARファイル(Servlet 4.0/Servlet 3.1/Servlet 3.0対応)

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

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

アノテーション名

Servlet仕様

JSP仕様

インターセプタ(CDI対象)

例外クラス

ManagedBean(JSF)

その他のクラス

サーブレット

サーブレット(API)

サーブレットフィルタ

サーブレットフィルタ(API)

イベントリスナ

イベントリスナ(API)

JSPファイル

タグハンドラ

タグライブラリイベントリスナ

クラシックタグハンドラ

シンプルタグハンドラ

@ApplicationException

−

−

−

−

−

−

−

−

−

−

−

○

−

−

@EJB

○

−

○

−

○

−

−

○

○

×

○※

−

○

○※

@EJBs

○

−

○

−

○

−

−

○

○

×

×

−

○

×

(凡例)

○:対応する。

×:アプリケーションサーバでは対応しない。

−:標準仕様で対応していない。

注※

DIの実行可否は,インターセプタの指定方法やインターセプタメソッドの種類によって非サポートの場合があります。詳細については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「15. Interceptors」を参照してください。

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

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

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

アノテーション名

Servlet仕様

JSP仕様

その他のクラス

サーブレット

サーブレットフィルタ

イベントリスナ

JSPファイル

タグハンドラ

タグライブラリイベントリスナ

クラシックタグハンドラ

シンプルタグハンドラ

@EJB

○

○

○

−

○

○

×

−

@EJBs

○

○

○

−

○

○

×

−

(凡例)

○:対応する。

×:アプリケーションサーバでは対応しない。

−:標準仕様で対応していない。

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

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

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

アノテーション名

Enterprise Bean

インターセプタ(CDI対象)

例外クラス

その他のクラス

インタフェース

Session Bean

Entity Bean

Message-driven Bean

インターセプタ

デフォルトインターセプタ以外

デフォルトインターセプタ

@AccessTimeout※1

−

○

−

−

−

−

−

−

−

@ActivationConfigProperty

−

−

−

×

−

−

−

−

−

@AfterBegin※2

−

○

−

−

−

−

−

−

−

@AfterCompletion※2

−

○

−

−

−

−

−

−

−

@ApplicationException

−

−

−

−

−

−

−

○

−

@Asynchronous※3

−

○

−

−

−

−

−

−

−

@BeforeCompletion※2

−

○

−

−

−

−

−

−

−

@ConcurrencyManagement※1

−

○

−

−

−

−

−

−

−

@DependsOn※1

−

○

−

−

−

−

−

−

−

@EJB

−

○

−

×

○※5

○

○※5

−

○※6

@EJBs

−

○

−

×

○※5

○

×

−

×

@Init※2

−

○

−

−

−

−

−

−

−

@Local

○

○

−

−

−

−

−

−

−

@LocalBean

−

○

−

−

−

−

−

−

−

@LocalHome

−

○

−

−

−

−

−

−

−

@Lock※1

−

○

−

−

−

−

−

−

−

@MessageDriven

−

−

−

×

−

−

−

−

−

@PostActivate

−

×

−

−

×

×

−

−

−

@PrePassivate

−

×

−

−

×

×

−

−

−

@Remote

○

○

−

−

−

−

−

−

−

@RemoteHome

−

○

−

−

−

−

−

−

−

@Remove※2

−

○

−

−

−

−

−

−

−

@Schedule※3

−

○

−

×

−

−

−

−

−

@Schedules※3

−

○

−

×

−

−

−

−

−

@Singleton※1

−

○

−

−

−

−

−

−

−

@Startup※1

−

○

−

−

−

−

−

−

−

@Stateful※2

−

○

−

−

−

−

−

−

−

@StatefulTimeout

−

×

−

−

−

−

−

−

−

@Stateless※4

−

○

−

−

−

−

−

−

−

@Timeout※3

−

○

−

×

−

−

−

−

−

@TransactionAttribute

−

○

−

×

−

−

−

−

−

@TransactionManagement

−

○

−

×

−

−

−

−

−

(凡例)

○:対応する。

×:アプリケーションサーバでは対応しない。

−:標準仕様で対応していない。

注※1

Singleton Session Beanの場合にだけ使用できます。

注※2

Stateful Session Beanの場合にだけ使用できます。

注※3

Stateless Session BeanとSingleton Session Beanの場合にだけ使用できます。

注※4

Stateless Session Beanの場合にだけ使用できます。

注※5

DIの実行可否は,インターセプタの指定方法やインターセプタメソッドの種類によって非サポートの場合があります。詳細については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「15. Interceptors」を参照してください。

注※6

該当するコンポーネントがCDIの機能を含むコンポーネントの場合だけ使用できます。

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

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

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

アノテーション名

Enterprise Bean

例外クラス

その他のクラス

インタフェース

Session Bean

Entity Bean

Message-driven Bean

インターセプタ

デフォルトインターセプタ以外

デフォルトインターセプタ

@ActivationConfigProperty

−

−

−

×

−

−

−

−

@ApplicationException

−

−

−

−

−

−

○

−

@EJB

−

○

−

×

○

○

−

−

@EJBs

−

○

−

×

○

○

−

−

@Init※1

−

○

−

−

−

−

−

−

@Local

○

○

−

−

−

−

−

−

@LocalHome

−

○

−

−

−

−

−

−

@MessageDriven

−

−

−

×

−

−

−

−

@PostActivate

−

×

−

−

×

×

−

−

@PrePassivate

−

×

−

−

×

×

−

−

@Remote

○

○

−

−

−

−

−

−

@RemoteHome

−

○

−

−

−

−

−

−

@Remove※1

−

○

−

−

−

−

−

−

@Stateful※1

−

○

−

−

−

−

−

−

@Stateless※2

−

○

−

−

−

−

−

−

@Timeout※2

−

○

−

×

−

−

−

−

@TransactionAttribute

−

○

−

×

−

−

−

−

@TransactionManagement

−

○

−

×

−

−

−

−

(凡例)

○:対応する。

×:アプリケーションサーバでは対応しない。

−:標準仕様で対応していない。

注※1

Stateful Session Beanの場合にだけ使用できます。

注※2

Stateless Session Beanの場合にだけ使用できます。

(5) ライブラリJARのServlet/JSP仕様のクラス

ライブラリJARのServlet/JSP仕様のクラスに記述できるアノテーションの一覧を示します。

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

アノテーション名

Servlet仕様

JSP仕様

サーブレット

サーブレット(API)

サーブレットフィルタ

サーブレットフィルタ(API)

イベントリスナ

イベントリスナ(API)

JSPファイル

タグハンドラ

タグライブラリイベントリスナ

クラシックタグハンドラ

シンプルタグハンドラ

@EJB

−

−

○

−

○

−

−

○

○

×

@EJBs

−

−

○

−

○

−

−

○

○

×

(凡例)

○:対応する。

×:アプリケーションサーバでは対応しない。

−:標準仕様で対応していない。

(6) ライブラリJARのその他のクラス

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

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

アノテーション名

Enterprise Bean

インターセプタ(CDI対象)

例外クラス

その他のクラス

インタフェース

Session Bean

Entity Bean

Message-driven Bean

インターセプタ

@ApplicationException

−

−

−

−

−

−

○

−

@EJB

−

−

−

−

○※1

○※1

−

○※2

@EJBs

−

−

−

−

○※1

×

−

×

@Local

○

−

−

−

−

−

−

−

@PostActivate

−

−

−

−

×

−

−

−

@PrePassivate

−

−

−

−

×

−

−

−

@Remote

○

−

−

−

−

−

−

−

(凡例)

○:対応する。

×:アプリケーションサーバでは対応しない。

−:標準仕様で対応していない。

注※1

DIの実行可否は,インターセプタの指定方法やインターセプタメソッドの種類によって非サポートの場合があります。詳細については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「15. Interceptors」を参照してください。

注※2

該当するコンポーネントがCDIの機能を含むコンポーネントの場合だけ使用できます。