Oracle MediatorでXSLマップ・ファイルを作成する方法

XSLTマップ・エディタを使用すると、Oracle Mediatorで、XMLスキーマ間でデータを変換するためのXSLファイルを作成できます。XSLファイルを定義した後は、そのファイルを複数のルーティング・ルール仕様で再利用できます。この項では、XSLTマップ・エディタを使用してトランスフォーメーション・マップXSLファイルを作成する方法の概要を示します。

XSLTマップ・エディタは、Oracle JDeveloperの「アプリケーション」ウィンドウでXSLファイルをクリックするか、メディエータ・エディタ「トランスフォーメーション」アイコンをクリックすると使用できます(次のステップで説明します)。新規のトランスフォーメーション・マップを作成するか、既存のトランスフォーメーション・マップを更新できます。

メディエータ・エディタでXSLTマップ・エディタを起動してデータ・トランスフォーメーションXSLファイルを作成または更新するには、次のステップに従います。

メディエータ・エディタでXSLマップ・ファイルを作成するには:

  1. メディエータ・エディタを開きます。
  2. 「ルーティング・ルール」の左側の「+」アイコンをクリックして「ルーティング・ルール」パネルを開きます。

    「ルーティング・ルール」パネルにトランスフォーメーション・マップ・アイコンが表示されます。

  3. 図41-6に示すように、「次を使用して変換」フィールドの右側にある適切な「トランスフォーメーション・マップ」アイコンをクリックして、「トランスフォーメーション・マップ」ダイアログを開きます。

    図41-6 ルーティング・ルール

    図41-6の説明が続きます
    「図41-6 ルーティング・ルール」の説明

    このトランスフォーメーション・マップ・ダイアログには、既存のトランスフォーメーション・マップ(XSL)ファイルを選択するか、新規のマップ・ファイルを作成するオプションが表示されます。たとえば、「同期リプライ」セクションの「トランスフォーメーション・マップ」アイコンを選択すると、図41-7に示すダイアログが表示されます。

    図41-7 「リプライ・トランスフォーメーション・マップ」ダイアログ

    図41-7の説明が続きます
    「図41-7 「リプライ・トランスフォーメーション・マップ」ダイアログ」ダイアログ」の説明

    ルーティング・ルールに同期リプライまたはフォルトが含まれている場合、「リプライ・トランスフォーメーション・マップ」ダイアログまたは「フォルト・トランスフォーメーション・マップ」ダイアログには、「リクエストをリプライ・ペイロードに含める」オプションが表示されます。 このオプションを有効化すると、リクエスト・メッセージから情報を取得できます。リクエスト・メッセージ、リプライおよびフォルト・メッセージは、複数のパートで構成できるため、複数のソース・スキーマを指定できます。コールバックとコールバック・タイムアウト・トランスフォーメーションも、複数のパートで構成できます。

    各メッセージ・パートには変数が入ります。リプライ・トランスフォーメーションでは、リプライ・メッセージにはメイン・パート(検出される最初のパート)のスキーマ、およびそれに続く各パートのin.partname変数が含まれます。インクルード・リクエスト・メッセージには、各パートのinitial.partname変数が含まれます。

    たとえば、リプライのメイン・パートがout1.HoustonStoreProductスキーマで、変数として処理される他の2つのパートがin.HoustonStoreProductin.HoustonStoreProduct2であるとします。リクエスト・メッセージには、変数として処理されるinitial.expenseinitial.expense2およびinitial.expense3の3つのパートが含まれます。図41-8に例を示します。

    図41-8 リプライ・パート

    図41-8の説明が続きます
    「図41-8 リプライ・パート」の説明
  4. 次のいずれかのオプションを選択します。
    • 「検索」アイコンを選択し、既存のXSLTマップ・ファイルを参照(またはデフォルト値をそのまま使用)します。

    • 「追加」アイコンをクリックして、新しいXSLTマップ・ファイルを作成し、そのファイルの名前を入力(またはデフォルト値をそのまま使用)します。

      ステップ3で説明したように、WSDLファイルのソース・メッセージに複数のパートがある場合は、各パートに変数が使用されます。トランスフォーメーションのターゲットに複数のパートがある場合は、複数のトランスフォーメーション・ファイルがこれらのターゲットにマップされます。この場合、Oracle Mediatorの「トランスフォーメーション」ダイアログには、ターゲット・パートごとに別々のパネルが表示されます。たとえば、図41-9はターゲットに3つのパートがあるリクエストを示しています:

    図41-9 「リクエスト・トランスフォーメーション・マップ」ダイアログ

    図41-9の説明が続きます
    「図41-9 「リクエスト・トランスフォーメーション・マップ」ダイアログ」ダイアログ」の説明
  5. 「OK」をクリックします。

    新しいXSLTマップ・ファイルを作成することを選択した場合は、XSLTマップ・エディタが開き、ソース・スキーマ要素をターゲット・スキーマ要素に関連付けることができます。

  6. XSLTマップ・エディタの使用方法の概要は、「XSLTマップ・エディタの概要」を参照してください。