ヘッダーをスキップ
Oracle SOA Suite開発者ガイド
10g(10.1.3.1.0)
B31839-01
  目次へ
目次
索引へ
索引

前へ
前へ
 
次へ
次へ
 

4.7 ADFデータ・コントロールを使用したサービスの公開

サービスをユーザー・インタフェースにバインドする最も簡単な方法は、ADFデータ・コントロールを使用することです。

ここでは、次の項目について説明します。


注意:

SOAアプリケーションでは、ADFデータ・コントロールを使用する必要はありません。 しかし、ADFデータ・コントロールは、クライアントでの製品の表示、およびテスト目的のために便利です。

4.7.1 ADFデータ・コントロールの作成方法

EJBセッションBeanからADFデータ・コントロールを作成するには、ナビゲータでセッションBeanを右クリックし、「データ・コントロールの作成」を選択するか、セッションBeanをデータ・コントロール・パレットまでドラッグします。


注意:

Oracle固有のライブラリを使用しないJ2EE開発者は、ADFデータ・コントロールのかわりに、JSFマネージドBeanを使用できます。 JSFマネージドBeanを使用する方法は複雑になるため、このマニュアルでは説明しません。

EJB 3.0セッションBeanからデータ・コントロールを作成すると、複数のXMLファイルが生成され、ナビゲータに表示されます。 生成されるファイルとデータ・コントロール・パレットについては、後続の各項で説明します。

4.7.2データ・コントロール・ファイルの理解

データ・コントロールを作成すると、サービス・レイヤーに次のXMLファイルが生成されます。

  • DataControls.dcx: データ・コントロール定義ファイル

  • <session_bean>.xml: 構成定義ファイル

  • ReadOnlyCollection.xml: デザインタイムXMLファイル

  • ReadOnlySingleValue.xml: デザインタイムXMLファイル

  • UpdateableCollection.xml: デザインタイムXMLファイル

  • UpdateableSingleValue.xml: デザインタイムXMLファイル

  • <entity_name>.xml: エンティティ定義ファイル(各エンティティに対して1つ)

これらのファイルがどのように関連付けられ、使用されるかの詳細は、『Oracle Application Development Framework開発者ガイド』の付録Aを参照してください。

4.7.2.1 DataControls.dcxファイルの概要

DataControls.dcxファイルは、ビジネス・サービスのデータ・コントロールを登録すると作成されます。 この.dcxファイルによって、クライアントと使用可能なビジネス・サービス間の相互作用を簡素化する、Oracle ADFサービス・レイヤー・アダプタ・クラスが識別されます。 EJB、WebサービスおよびBeanベースのデータ・コントロールの場合は、このファイルをプロパティ・インスペクタで編集して、パラメータの追加または削除、およびデータ・コントロールの設定の変更ができます。 たとえば、この.dcxファイルを使用すると、ソート機能を使用するかどうかなど、様々な項目に対するグローバル・プロパティを設定できます。

4.7.2.2 構成定義ファイルの概要

セッションBeanをOracle ADFデータ・コントロールとして登録すると、各セッションBeanに対するXML定義ファイルがサービス・プロジェクトに作成されます。 このファイルは通常、構成定義ファイルと呼ばれます。 構成定義ファイルの名前はセッションBeanと同じですが、拡張子.xmlが付加されます。

構成定義は、次に示す3つのタイプのオブジェクトで構成されます。

  • 属性

  • アクセッサ

  • 操作

4.7.2.3 エンティティXMLファイルの概要

データ・コントロールを作成すると、各エンティティ(TopLink、EJBまたはJava Bean)に対するXMLファイルが生成されます。 これらのファイルは、ADFデザインタイムとランタイムの両方に使用されます。 これらのファイルには、クラスの構造の他、各属性に対するUIヒント、バリデータ、ラベルが記述されます。

4.7.2.4 デザインタイムXMLファイルの概要

デザインタイム用の4つのファイルが単独で生成されます。

  • ReadOnlyCollection.xml

  • ReadOnlySingleValue.xml

  • UpdateableCollection.xml

  • UpdateableSingleValue.xml

これらのファイルは、MethodAccessor定義によって、使用可能な操作を記述したCollectionBeanClassとして参照されます。 通常、このファイルは手動で編集しませんが、各項目はデータ・コントロール・パレットでカスタマイズできます。

4.7.3 データ・コントロール・パレットの理解

クライアント開発者は、データ・コントロール・パレットを使用して、データ・バインドされたHTML要素(JSPページ用)、データ・バインドされたFaces要素(JSF JSPページ用)、およびデータ・バインドされたSwing UIコンポーネント(ADF Swingパネル用)を作成します。 データ・コントロール・パレットは、次の2つの選択リストで構成されます。

  • 使用可能なビジネス・オブジェクト、メソッドおよびデータ・コントロール操作の階層表示。

  • 適切なビジュアル要素のドロップダウン・リスト。特定のビジネス・オブジェクト用に選択して、オープン・クライアント・ドキュメントにドロップできます。

また、Webアプリケーション開発者は、データ・コントロール・パレットを使用して、ビジネス・サービスによって提供されたメソッドを選択し、ページ・フローのデータ・ページやデータ・アクションにドロップできます。

このパレットは、前述の項で説明したXMLファイルの直接表現であるため、ファイルを編集することで、パレットに含まれている要素を変更できます。

データ・コントロール・パレットに表示されているビジネス・サービスの階層構造は、サービス・プロジェクト内のデータ・コントロールを使用して登録したビジネス・サービスによって決まります。 パレットには、登録したビジネス・サービスごとに個別のルート・ノードが表示されます。

図4-9 データ・コントロール・パレット

データ・コントロール・パレットの図

4.7.3.1 データ・コントロールのビジネス・オブジェクトの概要

データ・コントロール・パレットのルート・ノードは、ビジネス・サービス用に登録されたデータ・コントロールを表します。 ルート・データ・コントロール・ノードから階層を下位にたどると、パレットには、Beanベースのビジネス・サービスが、コンストラクタ、属性、アクセッサまたは操作として表されます。

  • コンストラクタ: 作成可能なタイプは「コンストラクタ」ノード内に含まれます。 これらのタイプによって、オブジェクトのデフォルト・コンストラクタがコールされます。

  • 属性: Beanプロパティなど。単純なスカラー値オブジェクト、構造化オブジェクト(Bean)またはコレクションを定義できます。

  • アクセッサ: get()メソッドおよびset()メソッド。

  • 操作: Beanメソッドなど。値を戻す場合と戻さない場合、メソッド・パラメータを使用する場合と使用しない場合があります。 Webサービスの場合、データ・コントロール・パレットに表示されるのは操作のみです。

データ・コントロール・パレットの使用方法の詳細は、『Oracle Application Development Framework開発者ガイド』を参照してください。

4.7.3.2 ビジネス・サービス変更後のADFデータ・コントロールのリフレッシュ

サービス・プロジェクト用のデータ・コントロール定義の作成が終了した後は、ビジネス・サービスの変更後にデータ・コントロールを更新する場合があります。 データ・コントロール定義をリフレッシュすると、最新のビジネス・サービスの変更内容がADFアプリケーションで使用可能になります。データ・コントロール定義をリフレッシュするために実行する処理は、サービス・プロジェクトに対する変更のタイプによって異なります。

4.7.3.2.1 変更したデータ・コントロールのデータ・コントロール・パレットでの表示

パレットが表示されていない場合は、「表示」メニューを選択し、「データ・コントロール・パレット」を選択します。 パレットがすでに表示されている場合は、そのパレットを右クリックし、「リフレッシュ」を選択します。

4.7.3.2.2 変更したビジネス・サービス用のデータ・コントロール定義のリフレッシュ

サービス・プロジェクトで、作成するBeanまたは他のビジネス・サービスの新規プロパティを定義します。 .javaファイルをコンパイルし、対応する.xmlファイルにビジネス・サービスのメタデータを再生成します。 変更したビジネス・サービスがBeanベース(EJBセッションBeanなど)の場合は、セッションBeanを右クリックして「データ・コントロールの作成」を選択すると、データ・コントロールをリフレッシュできます。

ADF Business Componentsの場合、データ・コントロール定義は、ADF BCプロジェクト・ファイルを変更したときに自動的に更新されます。

4.7.3.2.3 削除したビジネス・サービス用のデータ・コントロール定義の削除

データ・コントロール定義を削除するには、ビュー・プロジェクトで、DataBindings.dcxファイルを選択し、構造ウィンドウで、サービス・プロジェクトに表示されなくなったビジネス・サービスを表しているデータ・コントロール・ノードを選択します。 データ・コントロール・ノードを右クリックし、「削除」を選択します。

JDeveloperによって、サービス・プロジェクト内のデータ・コントロール定義ファイル(DataBindings.dcx)が更新されます。 このDataBindings.dcxファイルによって、クライアントと使用可能なビジネス・サービス間の相互作用を簡素化する、Oracle ADFサービス・レイヤー・アダプタ・クラスが識別されます。

4.7.3.2.4 ビジネス・サービスの名前変更または移動後のデータ・コントロールの更新

サービス・プロジェクトで、ビジネス・サービスの名前を変更した場合またはビジネス・サービスを新規パッケージに移動した場合は、クライアントのデータ・コントロール定義内のサービス・プロジェクトの参照を更新する必要があります。

ビュー・プロジェクトで、DataBindings.dcxファイルを選択します。 構造ウィンドウで、移動したビジネス・サービスを表すデータ・コントロール・ノードを選択します。 プロパティ・インスペクタで、パッケージ属性を編集して、新規パッケージ名を指定します。