6 データ・サービスの生成およびデプロイ

この章では、Oracle Data Integratorを使用してデータ・サービスを生成およびデプロイする方法について説明します。

この章の内容は次のとおりです。

データ・サービスの生成およびデプロイ

モデル、データ・ソースおよびコンテナを構成した後は、データ・サービスを生成してデプロイできます。モデルにデータ・サービスを生成すると、モデル・レベルのデータ・サービスおよび選択したデータストアのデータ・サービスがモデルに生成されます。

モデルにデータ・サービスを生成するには:

  1. デザイナ・ナビゲータの「モデル」ツリーで、モデルを選択します。
  2. 右クリックして「サービスの生成」を選択します。「データ・サービスを生成中」ウィンドウが開きます。
  3. 「データ・サービスを生成中」ウィンドウで、次の各フィールドに値を入力します。
    • 生成されたデータ・サービスを格納: 生成されたソース・コードおよびコンパイルされたWebサービスがここに配置されます。このディレクトリは、生成後に削除できる一時的な場所です。データ・サービスに対して生成されたソース・コードをここで確認できます。

    • コンテキスト: データ・サービスを生成してデプロイするコンテキスト。このコンテキストの選択は、次の3つに影響します。

      • 生成時のJDBC/Javaデータ型バインディングの決定

      • データの提供に使用される物理スキーマの決定

      • デプロイ先の物理Webサービス・コンテナの決定

    • 生成フェーズ: 1つ以上の生成フェーズを選択します。通常のデプロイでは、3つのフェーズすべてを選択する必要があります。ただし、新規のSKMをテストする場合などには、生成フェーズのみを実行すると便利です。各フェーズの意味は、次の表を参照してください。

  4. 「OK」をクリックし、データ・サービスの生成およびデプロイを開始します。
フェーズ 説明

コードの生成

このフェーズは、次の操作を実行します。

  • 生成ディレクトリの内容を削除します。

  • SKMのコード・テンプレートを使用して、データ・サービスのJavaソース・コードを生成します。

コンパイル

このフェーズは、次の操作を実行します。

  • Webサービス・フレームワークを抽出します。

  • Javaソース・コードをコンパイルします。

デプロイメント

このフェーズは、次の操作を実行します。

  • コンパイル・コードをパッケージ化します。

  • コンテナに対して選択したデプロイ方法を使用して、パッケージをデプロイ・ターゲットにデプロイします。

生成サービスの概要

Oracle Data Integratorで生成されるデータ・サービスには、モデル・レベルのサービスとデータストア・レベルのサービスがあります。次に、これらのサービスについて説明します。

モデル・レベルのサービス

モデルが一貫性セットCDCに対応している場合、データ・サービスはモデル・レベルで生成されます。

モデル・レベルでは、次のサービスを使用できます。

  • extend Window(パラメータなし): ウィンドウの拡張操作を実行します。

  • lock(サブスクライバ名): 名前付きサブスクライバの一貫性セットをロックします。複数のサブスクライバの一貫性セットをロックするには、複数のOdiInvokeWebServiceステップを使用するなどして、このサービスを複数回コールします。

  • unlock(サブスクライバ名): 名前付きサブスクライバの一貫性セットをロック解除します。

  • purge(パラメータなし): 使用された変更をパージします。

これらの操作の詳細は、『Oracle Data Integratorでの統合プロジェクトの開発』ジャーナル化の使用に関する項を参照してください。

データストア・レベルのサービス

生成された各データ・サービスによって提供される操作の範囲は、その生成に使用されたSKMに応じて異なります。Oracle Data Integratorに付属するSKMでは、複数の共通プロパティを共有しています。ほとんどの場合、公開されるエンティティの名前が各操作の名前の一部となります。次に、公開エンティティCustomerを使用した例を示します。

データストア・レベルでは、次の操作を使用できます。

  • 単一のエンティティに対する操作。これらの操作では、主キーの値を指定することで単一のレコードを操作できます。新規行が存在する場合は、その行を記述する他のフィールドを指定する必要があります。例: addcustomer、getcustomer、deletecustomer、updatecustomer。

  • フィルタで指定されたエンティティ・グループに対する操作。これらの操作では、1つまたは複数のフィールドの値を指定してフィルタを定義し、各行に追加された変更に対応する他の値をオプションで指定します。通常、戻される行の最大数も指定できます。例: getcustomerfilter、deletecustomerfilter、updatecustomerfilter。

  • エンティティのリストに対する操作。このリストは、前述の単一のエンティティの場合と同様に、個々のエンティティを複数指定することで作成します。例: addcustomerlist、deletecustomerlist、getcustomerlist、updatecustomerlist。

データ・サービスのテスト

生成されたデータ・サービスをテストする最も簡単な方法は、OdiInvokeWebService Oracle Data Integratorツールのグラフィカル・インタフェースを使用することです。この件の詳細は、『Oracle Data Integratorでの統合プロジェクトの開発』Webサービスの使用に関する項を参照してください。