javax.interceptorパッケージのアノテーションの適用範囲を説明します。ここでは,コンポーネントごとに記述できるアノテーションを説明します。
javax.interceptorパッケージのアノテーションは,CDIアプリケーションでも利用できます。ただし,EJBと組み合わせて利用する場合は注意が必要です。注意事項の詳細は,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「9. アプリケーションサーバでのCDIの利用」を参照してください。
WARファイルに記述できるアノテーションはありません。
EJB-JARファイルに記述できるアノテーションの一覧を示します。
表2-16 EJB-JARファイル(EJB3.1/EJB3.0対応)に記述できるアノテーション(javax.interceptorパッケージ)
アノテーション名 | Enterprise Bean | 例外クラス | その他のクラス | |||||
---|---|---|---|---|---|---|---|---|
インタフェース | Session Bean | Entity Bean | Message-driven Bean | インターセプタ | ||||
デフォルトインターセプタ以外 | デフォルトインターセプタ | |||||||
@AroundInvoke | - | ○ | - | × | ○ | ○ | - | - |
@ExcludeClassInterceptors | - | ○ | - | × | - | - | - | - |
@ExcludeDefaultInterceptors | - | ○ | - | × | - | - | - | - |
@Interceptors | - | ○ | - | × | - | - | - | - |
ライブラリJARのサーブレットまたはJSPに記述できるアノテーションはありません。
ライブラリJARのEnterprise Bean,例外クラス,およびその他のクラスに記述できるアノテーションの一覧を示します。
表2-17 ライブラリJAR(Enterprise Bean/例外クラス/その他のクラス)に記述できるアノテーション(javax.interceptorパッケージ)
アノテーション名 | Enterprise Bean | 例外クラス | ||||
---|---|---|---|---|---|---|
インタフェース | Session Bean | Entity Bean | Message-driven Bean | インターセプタ | ||
@AroundInvoke | - | - | - | × | ○ | - |