• 検索結果がありません。

WebOTXマニュアル

N/A
N/A
Protected

Academic year: 2021

シェア "WebOTXマニュアル"

Copied!
34
0
0

読み込み中.... (全文を見る)

全文

(1)
(2)

1-5-2

目次

1. Developer’s Studio ...3

1.5. アノテーションエディタ...3

1.5.1. アノテーションの一覧表示・編集 ...3

1.5.2. アノテーション表示選択・ビュー...15

1.5.3. アノテーションの検証...23

1.5.4. サポートするアノテーション...28

(3)

1.Developer

’s Studio

本章では、WebOTX Developer の機能を使いこなすための詳細な説明を行います。また、WebOTX が提 供する API の利用方法について説明します。

1.5.アノテーションエディタ

Java EE より開発容易性の一環として、アノテーションが導入されます。アノテーション定義を使うこと で、配備記述子による XML 編集の煩雑さは解消され、Java EE コンポーネントを簡単に作成できます。し かし、アノテーション定義は、数多く存在します。これらをまとめてソースコード編集すると生産効率が下 がる場合があります。WebOTX Developer’s Studio アノテーションエディタは、アノテーション定義を GUI 化することで、編集作業を簡略化します。 アノテーションエディタは以下の機能があります。 アノテーションの一覧表示・編集 Java ソースに持つアノテーションを一覧表示します。それに、GUI でアノテーションの付与・更新・削除機 能を提供します。 アノテーション表示選択・ビュー 用途別にアノテーションをカテゴリに分け、そのカテゴリ毎にビューに表示するかしないか選択できる機 能を提供します。この機能により、ユーザが表示するアノテーションを制御できるようになります。 アノテーションの検証 ある要素にアノテーションが付与できるかどうかの検証やアノテーションの属性などに入力される値の検 証機能を提供します。

1.5.1.アノテーションの一覧表示・編集

概要

アノテーションの一覧表示機能

エディタ或はプロジェクト・エクスプローラーで選択される Java 要素によって、該当 Java 要素に付与でき るアノテーションを一覧表示します。

アノテーションの新規追加機能

エディタ或はプロジェクト・エクスプローラーで選択される Java 要素にアノテーションを付与します。

アノテーションの属性の変更機能

Java 要素に付与されたアノテーションに対して、属性の追加・変更・削除を行います。

(4)

1-5-4

アノテーション・ビューの表示

アノテーション・ビューは以下の手順で開きます。 「ウィンドウ」メニューから「ビューの表示」→ 「その他…」を選択して、「ビューの表示」画 面が表示されます。 「WebOTX アノテーション ツール」→「アノ テーション・ビュー」を選択して、「OK」ボタン を押します。 「アノテーション・ビュー」が表示されます。 エディタで或はプロジェクト・エクスプローラーで選択される Java 要素によって、該当 Java 要素に付 与できるアノテーションを一覧表示します。

(5)

アノテーション・ビューは以下のような画面です。 各項目の説明を以下に示します。 項番 項目 説明 備考 ① Java 要素 情報 付与対象の説明です。付 与対象とは、ソースエディタで フォーカスの Java 要素です。 Java 要素について、下記 Java 要素リストを参照してくだ さい。 表示形式: Annotaion 型:要素名---ファ イル名 有効な Java 要素が選択され ない場合、「Please select a Java element from an editor or explorer」というメッセージを 表示します。 例: Type:TestStatelessSessionBe an---TestStatelessSessionBe an.java 意味は、該当ビューで表示す るのはクラス TestStatelessSessionBean に 付与できるアノテーションで す。該当クラスは TestStatelessSessionBean.jav a ファイルに定義されます。 ② Annotations アノテーションの名前或はアノ テーションの属性名を表示し ます。 ③ Values アノテーション名の場合は該 当アノテーションが Java 要素 に付与されるかどうかを示し ます; (1)アノテーション名の場合: 「true」の場合、該当アノテーシ ョンが Java 要素に付与されま す; ① ② ③ ④

(6)

1-5-6

その以外は、テキストボックス です。 ④ 「+」、「-」ボ タン アノテーションの属性を表示 するかどうかを制御します。 「+」ボタンをクリックして、該当 アノテーションの属性を表示し ます; 「-」ボタンをクリックして、該当 アノテーションの属性を表示し ません。 注:上記付与対象という Java 要素リストは以下のとおりです。 型 説明 Type Java 要素はクラス、インターフェース(アノテーションを含 む)、或は enum(列挙型)であることを示します。 Method Java 要素はメソッドであることを示します。 Field Java 要素はフィールドであることを示します。 Parameter Java 要素はパラメータであることを示します。 コンストラクターは「Method」に含まれません。コンストラクターはサ ポートしません。 アノテーション自身の定義において、付与できる対象の指定は「Target」という属性によります。 エディタでフォーカスの Java 要素がアノテーションの「Target」定義と合わせる場合、アノテーション・ ビューにこのアノテーションの一覧表示、編集機能を提供します。

アノテーションの一覧表示機能

Java 要素の型によって、該当 Java 要素に付与できるアノテーションを一覧表示することを説明しま す。 クラス(Type)に付与できるアノテーションの一覧表示は以下の画面です。 付与対象がクラスとメソッドで、カテゴリが EJB3.0 である場合、画面表示を例として、説明します。 付与対象はクラスの場合:

(7)

エディタでクラス名が選択された場合、javax.ejb.Stateless や javax.ejb.Stateful など Target は「Type」 であるアノテーションが、ビューで表示されます。ただし、javax.ejb.PostActivate や

javax.ejb.PrePassivate など Target は「Method」であるアノテーションが、ビューで表示されません。

付与対象はメソッドの場合:

(8)

1-5-8

エディタでメソッド名が選択された場合、javax.ejb.PostActivate や javax.ejb.PrePassivate など Target は「Method」であるアノテーションが、ビューで表示されます。ただし、javax.ejb.Stateless や

javax.ejb.Stateful など Target は「Type」であるアノテーションが、ビューで表示されません。

選択された 付与対象 カテゴリ 説明 クラス カテゴリ設定範囲内において、Target 定義 にクラスが含まれるアノテーションを表示し ます。 メソッド カテゴリ設定範囲内において、Target 定義 にメソッドが含まれるアノテーションを表示 します。 その他 プロジェクトの「アノテー ション表示選択」によ り、選択された該当カ テゴリのアノテーション を表示します。詳しくは 「アノテーション表示選 択」機能を参照してくだ さい。 カテゴリ設定範囲内において、Target 定義 に付与対象が含まれるアノテーションを表 示します。 1. javax.ejb.TransactionAttribute や javax.interceptor.Interceptors など Target は「Type」、「Method」両方であるアノテーションが、 クラス名が選択された場合もメソッドが選択された場合も、ビュ ーで表示されます。 2. アノテーションが「Target」を合わせない場所に付与された場 合、エディタでエラーが発生します。詳しい情報は「1.5.3 アノテ ーションの検証機能」を参照してください。 3. 各アノテーションの Target は、「1.5.4 サポートするアノテーショ ン」を参照してください。

アノテーションの新規追加機能

使用例で、アノテーションの新規追加機能の使い方を説明します。 以下は javax.ejb.Stateless を Java クラスに追加する例です。 下図は、アノテーションを追加する前のエディタとアノテーション・ビューの状態です。

(9)

「アノテーション・ビュー」ビューで、 「javax.ejb.Stateless」アノテーション の「Values」が「true」に選択しま す。 「javax.ejb.Stateless」アノテーションがクラス TestStatelessSessionBean に付与されます。 下図は、「javax.ejb.Stateless」アノテーションがクラス TestStatelessSessionBean に付与された後の 画面です。

(10)

1-5-10

エディタで、以下の内容が追加されるとこを確認します。 ① TestStatelessSessionBean クラスの定義前で「@Stateless()」が追加されます。 ② 「import javax.ejb.Stateless;」句が追加されます。 ③ アノテーション・ビューで「javax.ejb.Stateless」アノテーションの「Values」は「true」にしたことを確認 します。

アノテーションの属性の変更機能

アノテーション・ビューを使って、簡単に Java 要素に付与されるアノテーションの属性を追加・更新・削 除することができます。 使用例で、アノテーションの属性変更の使い方を説明します。 以下は javax.ejb.Stateless を変更する例です。 下図は、属性変更の前のエディタとアノテーション・ビュー状態です。 ① ② ③

(11)

先ずは、アノテーションの属性の追加を説明します。

アノテーション・ビューで、「javax.ejb.Stateless」アノテーションの「description」属性の「Values」に「The description of Stateless Annotation」を入力して、「ENTER」キーを押します。

エディタで、@Stateless アノテーションに「description」属性が追加されます。 結果は、下図のようにします。

(12)

1-5-12

次に、属性の変更処理を示します。

アノテーション・ビューで「javax.ejb.Stateless」の「description」属性の値を「Modified It!」に変更して、 「ENTER」キーを押すと、変更結果がエディタに反映されます。

(13)

最後に、属性の削除処理を示します。

アノテーション・ビューで「javax.ejb.Stateless」の「description」属性の値を空白にして、「ENTER」キー を押すと、エディタで「@Stateless」アノテーションの「description」属性が削除されます。

(14)

1-5-14

文字列型、enum 型と boolean 型の属性が正しく追加・変更すること ができますが、それ以外、例えば:Class 型、配列型、int 型などがア ノテーション・ビューを使って、正しくエディタに反映できないことがあ ります。ただし、表示対象(Java ファイル)に設定された属性の値が アノテーション・ビューで正しく表示できます。

アノテーションの削除機能

アノテーション・ビューにおいて、既に存在するアノテーションを削除する機能です。 使用例で、アノテーションの削除機能の使い方を説明します。 以下は javax.ejb.Stateless を削除する例です。 下図は、アノテーションを削除する前のエディタとアノテーション・ビューの状態です。 アノテーション・ビューで「javax.ejb.Stateless」アノテーションの「Values」が「false」にします。

(15)

エディタで、「@Stateless」アノテーションが削除されます。 削除されたアノテーションの定義クラスの import 句(①の部分)は、 他の箇所で関連 import 句を利用する可能がありますから、削除しま せん。

1.5.2.アノテーション表示選択・ビュー

概要

(16)

1-5-16

アノテーション表示選択機能

アノテーション・ビューにサポートするアノテーションを全て表示してしまうと、何十個と表示されることとな り、非常に見づらく使い難いビューとなってしまいます。それを解消するために、該当アノテーション表示 選択機能を提供しています。該当機能は、カテゴリごとに所属するアノテーションをビューで表示するか しないか制御できます。

機能説明

アノテーション表示選択・ビューの使用方法について説明します。

アノテーション表示選択・ビューの表示

「ウィンドウ」メニューから「ビューの表示」→ 「その他…」を選択して、「ビューの表示」画 面が表示されます。 「WebOTX アノテーション ツール」→「アノ テーション表示選択・ビュー」を選択して、 「OK」ボタンを押します。 「アノテーション表示選択・ビュー」が表示されます。

(17)

エディタで或はプロジェクト・エクスプローラーで選択される Java プロジェクトによって、アノテーション 表示選択・ビューが表示されます。 アノテーション表示選択・ビューは以下のような画面です。 各項目の説明を以下に示します。 ① ⑦ ② ③ ④ ⑤ ⑥ ⑧ ⑨

(18)

1-5-18

② EJB3.0 アノテー ション チェックボックス EJB3.0 カテゴリに所属 するアノテーションがア ノテーション・ビューで表 示するかどうかを制御し ます。 ③ Java EE 共通 ア ノテーション チェックボックス Java EE 共通カテゴリに 所属するアノテーション がアノテーション・ビュー で表示するかどうかを制 御します。 ④ JPA アノテーシ ョン チェックボックス JPA カテゴリに所属する アノテーションがアノテ ーション・ビューで表示 するかどうかを制御しま す。 ⑤ Web サービス ア ノテーション チェックボックス Web サービスカテゴリに 所属するアノテーション がアノテーション・ビュー で表示するかどうかを制 御します。 ⑥ XML アノテーシ ョン チェックボックス XML カテゴリに所属する アノテーションがアノテ ーション・ビューで表示 するかどうかを制御しま す。 ⑦ アノテーション・ バリデーターを 有効にする チェックボックス アノテーションの組み合 わせ検証機能を有効に するかしないかを制御し ます。 選択された場合、該当プロジェクト にアノテーションの組み合わせ検 証を行います; 選択されない場合、該当プロジェ クトにアノテーションの組み合わせ 検証を行いません。 ⑧ 「確定」 ボタン カテゴリに所属するアノ テーション表示・非表 示、バリデーターの有 効・無効の変更を適用し ます。 ディフォルトで、「使用不可」です。 ⑨ 「リセット」 ボタン 今回の変更は無視し て、前回成功に設定した 状態を戻ります。 ディフォルトで、「使用不可」です。 各カテゴリのディフォルト状態(チェックボックスが有効・無効)がプロジェク トの属性により、異なります。 プロジェクトの種類とサポートできるカテゴリの関係は、下表で示します。 プロジェクトの種類 アノテーションのカテゴリ 備考 EJB Project EJB3.0 アノテーション

Java EE 共通 アノテーション JPA アノテーション

Web サービス アノテーション XML アノテーション

1. EJB Module の Version は 「3.0」が必要です。 2. JPA アノテーションが

「Java Persistence」モジュ ールが必要です。

(19)

Project JPA Project Utility Project Connector Project Application client Project JPA アノテーション Web サービス アノテーション XML アノテーション Persistence」モジュールが必 要です。 EAR Project サポートしていません。 ファセットを持って いない Java プロジ ェクト EJB3.0 アノテーション Java EE 共通 アノテーション JPA アノテーション Web サービス アノテーション XML アノテーション 全てのカテゴリは Java モジュールのバージョンは「5.0」以上が必要です。

アノテーション表示選択・ビューの使用

アノテーション・ビューに表示できるアノテーションのカテゴリを選択できます、これにより、注目したい アノテーションだけビューに表示でき、操作したいのは探しやすくなります。 全てのカテゴリが選択されない状態で、アノテーション表示選択・ビューとアノテーション・ビューは以 下のようです。

(20)

1-5-20

次は、EJB3.0 というカテゴリを選択することを例として、アノテーションの表示選択を説明します。 「アノテーション表示選択・ビュー」で、「EJB3.0 アノテーション」チェックボックスをチェックして、 「確定」ボタンを押します。 エディタで、あるクラスを選択すると、アノテーション・ビューでクラスに付与できる EJB3.0 カテゴリに 所属するアノテーションが一覧表示されます。 他の四つのカテゴリに所属するアノテーションがアノテーション・ビューで表示されないことを確認して ください。

その他表示選択方法

表示選択は Eclipse の Facet コンポーネントを利用して、実装しますので、Eclipse プロジェクトのファ セット設定より、カテゴリの表示選択も設定できます。

(21)

下記の図のように、「Web サービス アノテーション」チェックボックスが選択されませんが、プロジェク トのファセット属性を利用して、「Web サービス アノテーション」を選択して、Web サービスカテゴリに 所属するアノテーションがアノテーション・ビューで表示できます。 「プロジェクト・エクスプロー ラー」で 「StatelessSessionSample」 プロジェクトを選択します。 メニューから「プロジェクト」 →「プロパティー」を選択し ます。

(22)

1-5-22

「StatelessSessionSample」 プロジェクトの「プロパティ ー」画面が表示されます。 左側の「Project Facets」を 選択して、右側の「Modify Project…」ボタンを押しま す。

「Modify Faceted Project」 画面が表示されます。 「WebOTX アノテーション カテゴリ」の「Web サービス アノテーション」ファセットを 選択します。 「終了」ボタンを押します。 「StatelessSessionSample」 プロジェクトの「プロパティ ー」画面が表示されます。 右側の「Project Facet」リス トに「Web サービス アノテー ション」が追加されます。 「OK」ボタンを押します。 エディタで、クラス名 TestStatelessSessionBean にカーソルを置いています。 アノテーション・ビューでクラスに付与できる Web サービスカテゴリに所属するアノテーションが一覧

(23)

表示されます。 「アノテーション表示選択・ビュー」で「Web サービス アノテーション」が選択される状態を確認します。 「アノテーション・ビュー」で Web サービスカテゴリに所属するクラスに付与できるアノテーションが全て 表示しています。 他のカテゴリに所属するアノテーションが表示していません。 1. アノテーション・ビューで表示されないアノテーションが、手で付 与されることができます。 2. 手で付与されたアノテーションが正しくない場合、「1.5.3 アノテ ーションの検証機能」を参照してください。

1.5.3.アノテーションの検証

概要

ある要素にアノテーションが付与できるかどうかの検証やアノテーションの属性などに入力される値の検 証機能を提供します。しかし、クラス間による検証はサポートしません。 該当検証機能は、文法検証とアノテーションの組み合わせ検証の 2 つが含まれています。

文法検証

(24)

1-5-24

組み合わせ検証

アノテーション自身の属性間の制約がありますか?或は同じクラスに付与されるアノテーション間の制約 がありますか?そのような検証機能は、組み合わせ検証ということです。主に、以下の 2 種類が検証で きます。 1. アノテーション属性間の不正組み合わせの検証機能 2. 複数のアノテーション間の不正な組み合わせの検証機能 組み合わせ検証機能を使うため、検証を有効に設定することが必要です。使用したくない場合、該当検 証機能をクローズすることもできます。

機能説明

アノテーション

検証機能

について説明します。

アノテーションの定義位置の検証機能

該当機能は、アノテーション自身の Target 定義によって行う検証です。 各アノテーションの Target は「1.5.4 サポートするアノテーション」を参照してください。 以下の例では、手で@Stateful アノテーションがメソッドに付与された場合、エディタでエラーが発生す ることを提示します。また、マウスをエラー発生点に置くと、関連するエラーメッセージが表示されま す。

アノテーションの属性名の検証機能

Java 要素に付与されたアノテーションに不正な属性名を設定した場合、エラーを提示します。 例えば、クラスに付与される@Stateful アノテーションに「mappedName2」という属性を設定したら、エ ディタでエラーが発生することを提示します。また、マウスをエラー発生点に置くと、関連するエラーメ ッセージが表示されます。

アノテーションの属性のタイプの検証機能

Java 要素に付与されたアノテーションの属性に不正な型の値を設定した場合、エディタでエラーを提 示します。

(25)

例えば、ユーザはクラスに付与される@MessageDriven アノテーションの「activationConfig」属性に文 字列型の値を設定したら、エディタでエラーが発生することを提示します。また、マウスをエラー発生 点に置くと、関連するエラーメッセージが表示されます。

アノテーション属性間の不正組み合わせの検証機能

同じアノテーションの各属性間に、制約が存在する場合があります。属性の組み合わせが不正な場 合、検証できます。 「1.5.2 アノテーション表示選択・ビュー」で説明したように、「アノテーション表示選択・ビュー」をオー プンしてください。

(26)

1-5-26

「アノテーション表示選択・ビュー」で、 「アノテーション・バリデーターを有効に する」チェックボックスを選択して、「確 定」ボタンを押します。 下記の画面のように、エディタでエラーが発生することを提示します。 エディタのエラーフラグにマウスを置くと、関連するエラーメッセージが表示されます。 ユーザが検証機能を利用したくない場合は、以下の手順で、検証機能をクローズできます。

(27)

「アノテーション表示選択・ビュー」を表 示します。 「アノテーション表示選択・ビュー」で、 「アノテーション・バリデーターを有効に する」チェックボックスを外して、 「確定」ボタンを押します。 エディタでエラーフラグがなくなります。

(28)

1-5-28

また、ユーザが検証機能を使用したくない場合、該当検証機能をクローズすることもできます。 検証機能のオープン・クローズは「アノテーション属性間の不正組み合わせの検証機能」を参照して ください。

クラス TestAnnotationValidator に同時に@Stateless と@Stateful アノテーションを付与します。 TestAnnotationValidator.java を保存します。 下図のように、エディタでエラーが発生することを提示します。 エディタのエラーフラグにマウスを置くと、関連するエラーメッセージが表示されます。 1. 「アノテーション表示選択・ビュー」で、「アノテーション・バリデー ターを有効にする」チェックボックスを選択すると、組み合わせ 検証が有効になります。ただし文法検証は、関係しません。 2. 該当バージョンで、「EJB 3.0 アノテーション」、「JavaEE 共通アノ テーション」と「Web サービスアノテーション」に関する検証ルー ルのみ提供されます。「JPA アノテーション」と「XML アノテーシ ョン」に関する検証ルールが提供されません。

1.5.4.サポートするアノテーション

概要

該当部分は、WebOTX Developer's Studio でサポートできるアノテーションを説明します。

今まで、WebOTX Developer's Studio で下記の 5 つのカテゴリのアノテーションがサポートできます。 1. EJB3.0 アノテーション

(29)

2. Java EE 共通 アノテーション 3. JPA アノテーション 4. Web サービス アノテーション 5. XML アノテーション

EJB3.0 アノテーション

EJB 3.0 カテゴリに所属するアノテーションは以下のようにします。 項番 パッケージ名 アノテーション名 Target 1 javax.ejb ActivationConfigProperty [] 2 javax.ejb ApplicationException [T] 3 javax.ejb Init [M] 4 javax.ejb Local [T] 5 javax.ejb LocalHome [T] 6 javax.ejb MessageDriven [T] 7 javax.ejb PostActivate [M] 8 javax.ejb PrePassivate [M] 9 javax.ejb Remote [T] 10 javax.ejb RemoteHome [T] 11 javax.ejb Remove [M] 12 javax.ejb Stateful [T] 13 javax.ejb Stateless [T] 14 javax.ejb Timeout [M] 15 javax.ejb TransactionAttribute [M, T] 16 javax.ejb TransactionManagement [T] 17 javax.interceptor AroundInvoke [M] 18 javax.interceptor ExcludeClassInterceptors [M] 19 javax.interceptor ExcludeDefaultInterceptors [M, T] 20 javax.interceptor Interceptors [M, T]

javax.ejb パッケージに置く EJB と EJBsアノテーションが Java EE 共 通カテゴリに移動します。

(30)

1-5-30

3 javax.annotation PreDestroy [M] 4 javax.annotation Resource [F, M, T] 5 javax.annotation Resources [T] 6 javax.annotation.security DeclareRoles [T] 7 javax.annotation.security DenyAll [M] 8 javax.annotation.security PermitAll [M, T] 9 javax.annotation.security RolesAllowed [M, T] 10 javax.annotation.security RunAs [T] 11 javax.ejb EJB [F, M, T] 12 javax.ejb EJBs [T] 13 javax.persistence PersistenceContext [F, M, T] 14 javax.persistence PersistenceContexts [T] 15 javax.persistence PersistenceUnit [F, M, T] 16 javax.persistence PersistenceUnits [T] 17 javax.xml.ws WebServiceRef [F, M, T] 18 javax.xml.ws WebServiceRefs [T] EJB(s)、PersistenceContext(s)、PersistenceUnit(s)と WebServiceRef(s)の 8 つのアノテーションが他のパッケージから Java EE 共通カテゴリに移動されます。

JPA アノテーション

JPA カテゴリに所属するアノテーションは以下のようにします。 項番 パッケージ名 アノテーション名 Target 1 javax.persistence AssociationOverride [F, M, T] 2 javax.persistence AssociationOverrides [F, M, T] 3 javax.persistence AttributeOverride [F, M, T] 4 javax.persistence AttributeOverrides [F, M, T] 5 javax.persistence Basic [F, M] 6 javax.persistence Column [F, M] 7 javax.persistence ColumnResult [] 8 javax.persistence DiscriminatorColumn [T] 9 javax.persistence DiscriminatorValue [T] 10 javax.persistence Embeddable [T] 11 javax.persistence Embedded [F, M] 12 javax.persistence EmbeddedId [F, M] 13 javax.persistence Entity [T] 14 javax.persistence EntityListeners [T] 15 javax.persistence EntityResult [] 16 javax.persistence Enumerated [F, M]

(31)

17 javax.persistence ExcludeDefaultListeners [T] 18 javax.persistence ExcludeSuperclassListeners [T] 19 javax.persistence FieldResult [] 20 javax.persistence GeneratedValue [F, M] 21 javax.persistence Id [F, M] 22 javax.persistence IdClass [T] 23 javax.persistence Inheritance [T] 24 javax.persistence JoinColumn [F, M] 25 javax.persistence JoinColumns [F, M] 26 javax.persistence JoinTable [F, M] 27 javax.persistence Lob [F, M] 28 javax.persistence ManyToMany [F, M] 29 javax.persistence ManyToOne [F, M] 30 javax.persistence MapKey [F, M] 31 javax.persistence MappedSuperclass [T] 32 javax.persistence NamedNativeQueries [T] 33 javax.persistence NamedNativeQuery [T] 34 javax.persistence NamedQueries [T] 35 javax.persistence NamedQuery [T] 36 javax.persistence OneToMany [F, M] 37 javax.persistence OneToOne [F, M] 38 javax.persistence OrderBy [F, M] 39 javax.persistence PersistenceProperty [] 40 javax.persistence PostLoad [M] 41 javax.persistence PostPersist [M] 42 javax.persistence PostRemove [M] 43 javax.persistence PostUpdate [M] 44 javax.persistence PrePersist [M] 45 javax.persistence PreRemove [M] 46 javax.persistence PreUpdate [M] 47 javax.persistence PrimaryKeyJoinColumn [F, M, T] 48 javax.persistence PrimaryKeyJoinColumns [F, M, T] 49 javax.persistence QueryHint [] 50 javax.persistence SecondaryTable [T]

(32)

1-5-32

57 javax.persistence Temporal [F, M] 58 javax.persistence Transient [F, M] 59 javax.persistence UniqueConstraint [] 60 javax.persistence Version [F, M] javax.persistence パッケージに置く PersistenceContext(s)と PersistenceUnit(s)アノテーションが Java EE 共通カテゴリに移動しま す。

Web サービス アノテーション

Web サービスカテゴリに所属するアノテーションは以下のようにします。 項番 パッケージ名 アノテーション名 Target 1 javax.jws HandlerChain [F, M, T] 2 javax.jws Oneway [M] 3 javax.jws WebMethod [M]

4 javax.jws WebParam [Par]

5 javax.jws WebResult [M] 6 javax.jws WebService [T] 7 javax.jws.soap SOAPBinding [M, T] 8 javax.xml.ws BindingType [T] 9 javax.xml.ws RequestWrapper [M] 10 javax.xml.ws ResponseWrapper [M] 11 javax.xml.ws ServiceMode [T] 12 javax.xml.ws WebEndpoint [M] 13 javax.xml.ws WebFault [T] 14 javax.xml.ws WebServiceClient [T] 15 javax.xml.ws WebServiceProvider [T] 16 javax.xml.ws Action [M] 17 javax.xml.ws FaultAction [M]

18 javax.xml.ws.spi WebSreviceFeatureAnnotation [A] 19 javax.xml.ws.soap Addressing [T] 20 javax.xml.ws.soap MTOM [T] 21 javax.xml.ws RespectBinding [T] 22 com.nec.webotx.webservice.xm l.ws.api FeatureConstructor [C] 23 com.nec.webotx.webservice.xm l.ws.api PropertySet 24 com.nec.webotx.webservice.xm l.ws.api.server InstanceResolverAnnotation [A]

(33)

25 com.nec.webotx.webservice.xm l.ws.developer MemberSubmissionAddressing [T] 26 com.nec.webotx.webservice.xm l.ws.developer Stateful [T] 27 com.nec.webotx.webservice.xm l.ws.developer.servlet HttpSessionScope [T] 1. javax.xml.ws パッケージに置く WebServiceRef と WebServiceRefs の 2 つのアノテーションが Java EE 共通カテゴ リに移動します。 2. javax.jws.soap パッケージに置く InitParam、 SOAPMessageHandler と SOAPMessageHandlers の 3 つのアノ テーションが JAX-WS では未サポートのアノテーションのため、 サポートしません。 3. com.nec.webotx.webservice.xml.ws.api.PropertySet が内部クラ スでアノテーションが定義されましたが、現時点でサポートしま せん。 4. com.nec.webotx.webservice.xml.ws.developer.Stateful は、 javax.ejb.Stateful とクラス名衝突が発生しまった原因で、現時 点でサポートしません。

XML アノテーション

XML カテゴリに所属するアノテーションは以下のようにします。 項番 パッケージ名 アノテーション名 Target 1 javax.xml.bind.annotation XmlAccessorOrder [Pkg, T] 2 javax.xml.bind.annotation XmlAccessorType [Pkg, T] 3 javax.xml.bind.annotation XmlAnyAttribute [F, M] 4 javax.xml.bind.annotation XmlAnyElement [F, M] 5 javax.xml.bind.annotation XmlAttachmentRef [F, M, Par] 6 javax.xml.bind.annotation XmlAttribute [F, M] 7 javax.xml.bind.annotation XmlElement [F, M] 8 javax.xml.bind.annotation XmlElementDecl [M] 9 javax.xml.bind.annotation XmlElementRef [F, M] 10 javax.xml.bind.annotation XmlElementRefs [F, M] 11 javax.xml.bind.annotation XmlElements [F, M] 12 javax.xml.bind.annotation XmlElementWrapper [F, M]

(34)

1-5-34

18 javax.xml.bind.annotation XmlList [F, M, Par] 19 javax.xml.bind.annotation XmlMimeType [F, M, Par] 20 javax.xml.bind.annotation XmlMixed [F, M] 21 javax.xml.bind.annotation XmlNs [] 22 javax.xml.bind.annotation XmlRegistry [T] 23 javax.xml.bind.annotation XmlRootElement [T] 24 javax.xml.bind.annotation XmlSchema [Pkg] 25 javax.xml.bind.annotation XmlSchemaType [F, M, Pkg] 26 javax.xml.bind.annotation XmlSchemaTypes [Pkg] 27 javax.xml.bind.annotation XmlTransient [F, M] 28 javax.xml.bind.annotation XmlType [T] 29 javax.xml.bind.annotation XmlValue [F, M]

30 javax.xml.bind.annotation.adapters XmlJavaTypeAdapter [F, M, Pkg, Par, T] 31 javax.xml.bind.annotation.adapters XmlJavaTypeAdapters [Pkg]

アノテーションの Target

アノテーション声明で、アノテーションに付与された Target メタアノテーションによって、どの型の Java 要 素に付与できるか、決定されます。 ここで、上のリストで使った Target の種類について説明します。 Target 全称 説明 F FIELD クラスの FIELD に付与できます。 M METHOD クラスのメソッドに付与できます。 T TYPE クラス、インターフェース、enum とアノテーション型に付 与できます。 Par PARAMETER クラスのメソッドのパラメータに付与できます。 Pkg PACKAGE パッケージに付与できます。 ALL ANNOTATION_TYPE CONSTRUCTOR FIELD LOCAL_VARIABLE METHOD PACKAGE PARAMETER TYPE 全ての要素に付与できます。 A ANNOTATION_TYPE アノテーション型に付与できます。 C CONSTRUCTOR コンストラクターに付与できます。 空白 該当アノテーションは他のアノテーションの属性の値と してのみ利用できます。

参照

関連したドキュメント

Classroom 上で PowerPoint をプレビューした状態だと音声は再生されません。一旦、自分の PC

○ 4番 垰田英伸議員 分かりました。.

本装置は OS のブート方法として、Secure Boot をサポートしています。 Secure Boot とは、UEFI Boot

 在籍者 101 名の内 89 名が回答し、回収 率は 88%となりました。各事業所の内訳 は、生駒事業所では在籍者 24 名の内 18 名 が回答し、高の原事業所では在籍者

しかしながら、世の中には相当情報がはんらんしておりまして、中には怪しいような情 報もあります。先ほど芳住先生からお話があったのは

・如何なる事情が有ったにせよ、発電部長またはその 上位職が、安全協定や法令を軽視し、原子炉スクラ

当社は違法の接待は提供しません。また、相手の政府

Âに、%“、“、ÐなÑÒなどÓÔのÑÒにŒして、いかなるGÏもうことはできません。おÌÍは、ON