2.1.12 CDIのアノテーションのサポート範囲
CDIのアノテーションのサポート範囲を次の表に示します。
パッケージ |
含まれるアノテーション |
アプリケーションサーバのサポートの有無 |
---|---|---|
javax.decorator |
@Decorator |
〇 |
@Delegate |
〇 |
|
javax.enterprise.context |
@ApplicationScoped |
〇 |
@ConversationScoped |
〇 |
|
@Dependent |
〇 |
|
@Destroyed |
〇 |
|
@Initialized |
〇 |
|
@NormalScope |
〇 |
|
@RequestScoped |
〇 |
|
@SessionScoped |
〇 |
|
javax.enterprise.event |
@Observes |
〇 |
javax.enterprise.inject |
@Alternative |
〇 |
@Any |
〇 |
|
@Decorated |
〇 |
|
@Default |
〇 |
|
@Disposes |
〇 |
|
@Intercepted |
〇 |
|
@Model |
〇 |
|
@New |
〇 |
|
@Produces |
〇 |
|
@Specializes |
〇 |
|
@Stereotype |
〇 |
|
@TransientReference |
〇 |
|
@Typed |
〇 |
|
javax.enterprise.inject.spi |
@WithAnnotations |
〇 |
javax.inject |
@Inject |
〇 |
@Named |
〇 |
|
@Qualifier |
〇 |
|
@Scope |
〇 |
|
@Singleton |
〇 |
ここでは,コンポーネントごとに記述できるアノテーション(@Injectアノテーション)を説明します。なお,@Injectアノテーション以外のアノテーションについては,CDIに依存します。CDIに依存するアノテーションについては,CDI仕様のドキュメントを参照してください。
- 〈この項の構成〉
(1) WARファイル(Servlet 3.1/Servlet 3.0対応)
WARファイルに記述できるアノテーションの一覧を示します。
アノテーション名 |
Servlet仕様 |
JSP仕様 |
インターセプタ(CDI対象) |
例外クラス |
ManagedBean(JSF) |
その他のクラス |
||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
サーブレット |
サーブレット(API) |
サーブレットフィルタ |
サーブレットフィルタ(API) |
イベントリスナ |
イベントリスナ(API) |
JSPファイル |
タグハンドラ |
タグライブラリイベントリスナ |
||||||
クラシックタグハンドラ |
シンプルタグハンドラ |
|||||||||||||
@Inject |
○ |
− |
○ |
− |
○ |
− |
× |
× |
× |
× |
○ |
× |
○ |
○※ |
(2) EJB-JARファイル(EJB3.1対応)
EJB-JARファイルに記述できるアノテーションの一覧を示します。
アノテーション名 |
Enterprise Bean |
インターセプタ(CDI対象) |
例外クラス |
その他のクラス |
|||||
---|---|---|---|---|---|---|---|---|---|
インタフェース |
Session Bean |
Entity Bean |
Message-driven Bean |
インターセプタ |
|||||
デフォルトインターセプタ以外 |
デフォルトインターセプタ |
||||||||
@Inject |
× |
○ |
× |
× |
○ |
○ |
○ |
× |
○※ |
(3) ライブラリJARのServlet/JSP仕様のクラス
ライブラリJARのServlet/JSP仕様のクラスに記述できるアノテーションはありません。
(4) ライブラリJARのその他のクラス
ライブラリJARのその他のクラスに記述できるアノテーションの一覧を示します。
アノテーション名 |
Enterprise Bean |
インターセプタ(CDI対象) |
例外クラス |
その他のクラス |
||||
---|---|---|---|---|---|---|---|---|
インタフェース |
Session Bean |
Entity Bean |
Message-driven Bean |
インターセプタ |
||||
@Inject |
× |
× |
× |
× |
○ |
○ |
× |
○※ |