機械翻訳について

親統合からの同じ場所の統合の起動

ローカル統合アダプタを使用して設計している親統合から、同じ場所(子)のアクティブな統合を起動することができます。 共有場所は、統合が同じホスト・インスタンスまたは同じドメインで実行されていることを意味します。 親統合のアクティブ化と起動時に、同じ場所に配置された統合を起動して使用します。

機能

ローカル統合アダプタは、接続を作成するときに接続ページで公開されないシステム・アダプタです。 かわりに、ローカル統合アダプタは事前シード済の接続によって起動されます。 これは、統合の作成時に、ローカル統合接続が存在しない場合に作成されます。 このアダプタには、接続プロパティはなく、セキュリティ・ポリシーもありません。

ローカル統合アダプタは、次のように動作します:
  • 実行時(同じ場所にある)からアクティブな統合を選択して、新しい統合をビルドします。 次のガイドラインに留意してください。

    • アクティブsynchronous-synchronous、コールバックなしのasynchronous、およびスケジュールされた統合が選択可能です。

    • コールバック統合との非同期メッセージは表示されません。

    • 非アクティブ化されたドラフト統合は表示されません。

    • スケジュール済の統合は起動接続として許可され、「すぐに送信」オプションによって自動的に起動されます。

  • 複数の子統合を追加できます。 子統合(複数レベルの埋込み)を含む統合を追加することもできます。

  • 戻り値をダウンストリームでマップできます。 このマッピング機能は、統合の他の起動マッピングと同じです。

  • 共存(子)統合で使用されるSOAPアダプタまたはRESTアダプタのペイロードにヘッダー・サポートを追加できます。 「ヘッダー・サポートとの同じ場所の統合の作成」を参照してください。

  • バイナリ・ペイロードを子統合に渡すためにOpenAPI URL接続タイプで構成されたRESTアダプタ起動接続を使用して、親統合を作成できます。

    非構造化およびインラインのペイロード(アプリケーション/オクテット・ストリームなど)でバイナリ・データを使用します。 ファイルの内容は保持されますが、レシーバがファイル・タイプを決定する必要があります(たとえば、ファイル名拡張子から)。 任意のバイト・ストリームのインターネット・メディア・タイプはapplication/octet-streamです。

  • 実行時に親統合から子統合を動的に起動できます。 この機能は、次の作業が必要なシナリオで役立ちます:
    • RESTエンドポイントを動的に起動するか、設計時にエンドポイントが不明な場合に起動します。
    • 複数のREST子統合エンドポイントを呼び出します。これらはすべて同じ入力ペイロードを受け入れ、同じレスポンス・ペイロードを返します。 この機能により、スイッチ・アクションのすべての子統合を設計する必要がなくなります。

    「同場所の統合の動的起動」を参照してください。

ローカル統合アダプタと既存のSOAPアダプタおよびRESTアダプタは、次のように異なります:
  • ローカル統合サービスを起動するために複数の接続(SOAP/REST)を作成する必要はありません。

  • ランタイム通信では、常にHTTP (非SSL)が使用されます。

このアダプタは、ローカル・サービスの起動を実行するためにOracle Integrationで内部的に起動されます。

制限事項

次のローカル統合の制限に注意してください:
  • ローカル統合を使用する場合でも、そうでない場合でも、親統合と子統合の間でファイル参照を送受信することはできません。 ステージ・ファイルは、独自のフロー・インスタンスのコンテキストでスコープ指定され、親と子の統合間で共有されません。 これは設計によります。 かわりに、直接参照ではなく、ステージ・ファイルを添付として送受信できます。
  • クライアント資格証明を含むOAuthは推奨されません。
  • ネストされた匿名スキーマのあるWSDLとの子統合は作成できません。 回避策として、WSDLを手動で編集してスキーマを非匿名にします。
  • SOAPベースの子統合:
    • 親統合は、構成済の子統合に添付を送信できません。
  • RESTベースの子統合:
    • 親統合は、構成済の子統合に添付を送信できません。
    • 親統合では、子統合で予期されるXMLペイロードを処理できません。 子フローはJSONペイロードのみを受信するように構成する必要があり、XMLペイロードを使用してローカルで起動することはできません。

ローカル起動を設計するためのベスト・プラクティス

  • タスクまたは非同期統合をスケジュールするためのコールは、常にローカル起動で正常です。これは、現在のノードのコンテキストでは実行されないためです。
  • 呼び出し元の統合ブロックがレスポンスを待機しているため、非並列コード・セクションの呼び出しも常に問題になります。 現在、同期統合には並行機能はありません。 そのため、ローカル起動は常に同期フローで問題ありません。
  • 並列コード・セクション(パラレルfor-eachおよびパラレル・ファイル処理)からのコールは、ローカル起動の使用時に問題となります。これは、実行に同じノードを使用する可能性があるためです。 このような場合、コールではノード間の並列性が得られず、単一ノード上のリソースの競合が発生します。

親統合との共存統合の起動

次のステップでは、親統合が同じ場所に配置された統合を起動するオーケストレートされた統合の作成について概要を説明します。

ノート:

  • 親統合を別のインスタンスに移動する必要がある場合は、その統合とそのすべての子統合をパッケージに含めることをお薦めします。
  • 次の統合がある環境から別の環境(異なるホスト名を持つ)にインポートされる場合、ローカル(子)統合を編集するか、アダプタ・エンドポイント構成ウィザードで「RESTアダプタ」を編集すると、マッパーが大幅に変更され、再マッピングが必要になる可能性があります。
    • 同じ場所にある(子)統合が親統合から起動される統合。
    • Swagger-based接続を使用したRESTアダプタとの統合。
  1. オーケストレートされた統合を作成して設計します。
  2. 次のいずれかの方法で、統合アクションを統合に追加します:
    • キャンバスの右側で、「アクション」アイコンをクリックし、「統合」アクションを適切なロケーションにドラッグします。
    • 統合アクションを追加するロケーションで「Plus」アイコンをクリックし、「統合」を選択します。

    ローカル統合選択の構成ウィザードが表示されます。

  3. 次の詳細を指定して、「次」をクリックします。
    要素 説明

    ローカル統合呼出しに何を呼び出しますか。

    名前を指定します。

    このローカル統合の呼出しは何を実行しますか。

    説明を指定します。

  4. 次の詳細を指定して、「次」をクリックします。
    要素 説明

    統合

    起動する同じ場所にある統合を選択します。 アクティブな統合のみが表示されます。

    識別子

    選択した統合の識別子を表示します。

    説明

    選択した統合の説明を表示します。

  5. 実行する同じ場所にある統合の操作を選択し、「次」をクリックします。 この操作は、子統合によって異なります。 次の点に注意してください。
    • 子統合トリガー接続がREST Adapterである場合、Get、Post、PutおよびDelete操作を含めることができます。
    • 子統合トリガー接続がSOAPアダプタの場合、WSDL操作名を持つことができます。
    • 子統合トリガー接続がスケジュールの場合、すぐに送信の構成を実行します。
  6. 選択内容を確認して、「完了」をクリックします。
  7. 親統合のデザインを完了します。
  8. 実行時に統合をトラッキングするための適切なビジネス識別子を指定します。
  9. 統合をアクティブ化して起動します。
  10. 「インスタンスのトラッキング」ページに移動して、統合ステータスを追跡します。

    成功した場合、「インスタンスのトラッキング」ページには2つのインスタンス(親用と子用のインスタンス)があります。 正常に実行されなかったのに親が子を呼び出せない場合は、1つのエントリ(親)が存在します。 親が子をコールできる場合、2つのエントリがあります。 子が失敗するか子が成功したが、親がレスポンスを正しく処理しなかった場合、親は失敗することがあります。

ヘッダー・サポートとの同じ場所の統合の作成

ヘッダーは、アプリケーション要件に関する追加情報を渡すオプションの要素です。 たとえば、header要素を使用して、パスワードで保護されたサービスのデジタル・シグネチャを指定できます。 ペイロードとともに送信するヘッダーを構成および選択できます。 ヘッダーの選択は、接続ページで指定したWSDL URL定義に基づいて自動的に行われます。

リクエストおよびレスポンスSOAPおよびRESTヘッダーとともに、SOAPアダプタおよびRESTアダプタ、SOAPアダプタおよびRESTアダプタを使用するカスタムHTTPヘッダー、およびカスタムSOAPヘッダーを使用して標準HTTPヘッダーを構成できます。 SOAPアダプタまたはRESTアダプタのヘッダー要素の下にあるリクエストおよびレスポンス・マッパーでこれらのヘッダーを表示および編集できます。

次のユースケースでは、ヘッダー・サポートとの同じ場所の統合の作成の概要を示します。
  1. ヘッダー定義を含むWSDL URLを使用して、SOAPアダプタ接続(この例では)を作成します。
    接続ページの「接続プロパティ」セクションの「WSDL URL」フィールドにヘッダーが指定されたWSDL

  2. 接続ページの残りのフィールドに入力します。
  3. 接続をテストして保存します。
  4. コロケート(子)統合として機能するオーケストレートされた統合を作成します。
  5. SOAPアダプタを統合のトリガー接続として追加します。
  6. アダプタ・エンドポイント構成ウィザードのページを完了します。 具体的には、次のとおりです。
    1. ヘッダー・ページで、リクエスト・ヘッダーとレスポンス・ヘッダーの詳細を指定します。

    2. リクエスト・ヘッダー・ページで、リクエスト・ヘッダー名を指定します。

    3. レスポンス・ヘッダー・ページで、レスポンス・ヘッダー名を指定します。

  7. マッパーで、リクエスト・ヘッダーとレスポンス・ヘッダーをマップします。 この例では2つのSOAPアダプタ間でヘッダーをマップしていますが、2つのRESTアダプタ間でリクエスト・ヘッダーとレスポンス・ヘッダーをマップすることもできます。

  8. 統合を保存してアクティブ化します。
  9. 親統合として機能する別のオーケストレートされた統合を作成します。
  10. RESTアダプタを統合のトリガー接続として追加します。
  11. アダプタ・エンドポイント構成ウィザードでページを構成します。
  12. サマリー・ページで選択内容を確認し、「完了」をクリックします。

  13. 統合に「統合」アクションを追加します。
    これにより、ローカル統合選択の構成ウィザードが起動します。
  14. ウィザードのページを完了します。 特に、「選択統合」ページのステップ4で作成した子統合を選択します。
  15. RESTアダプタ・トリガー接続とSOAP起動(構成した「統合」アクション)の間のマップ・アイコンをクリックして、マップを構成します。
  16. ソースid要素をターゲットのSOAP、HTTPおよびカスタム・ヘッダー要素にマップします。

  17. 親統合を保存してアクティブ化します。 親統合は、SOAP起動として子統合を使用して設計されました。

ヘッダー・サポートの下位互換性

同じ場所に配置された統合でヘッダーのサポートのリリースより前に作成された既存の統合でヘッダー・サポートを使用する場合は、次の詳細に注意してください。

質問 回答
ヘッダーを使用して作成された既存の統合が、同じ場所に配置された統合のヘッダー・サポートがサポートされている環境にインポートされるとどうなりますか。 統合は問題なくアクティブ化できます。 ただし、ヘッダー機能を使用する場合は、アダプタ・エンドポイント構成ウィザードのページをクリックし、サマリー・ページで「完了」をクリックして、アダプタを編集する必要があります。 このシナリオでは、マッピングは削除されないため、修正する必要があります。
次のステップを実行するとどうなりますか。
  1. トリガー接続にヘッダーを含む子フローを作成します。
  2. この子エンドポイントをSOAP接続として使用します。
  3. 前述のSOAP接続をトリガーとして使用し、アダプタ・エンドポイント構成ウィザードのヘッダー・ページで「このエンドポイントのヘッダーを構成しますか?」をいいえに設定する統合を作成します。
  4. 統合をアクティブ化します。
  5. 「統合」アクションを使用する親統合でこの子統合を起動します。
  6. 統合によってローカル起動にラッパーが生成されるかどうかを確認します。
Yesの選択またはいいえに基づいて、ヘッダーがマッピングで表示または非表示になります。

同場所の統合の動的起動

実行時にコロケーション統合を動的に起動できます。 この例では、親統合は、データに基づいて実行時に2つの子統合のいずれかをコールできます。 親統合は、子統合を1つ呼び出すように設計されています。 ただし、子統合2を起動することもできます。 コードおよびバージョンの値は、適切な子統合に渡されます。

ノート:

動的呼出しは、「RESTアダプタ」でのみサポートされます。
  1. 「RESTアダプタ」トリガー接続を使用した初期子統合を作成してアクティブ化します。
    1. アプリケーション駆動型のオーケストレーション統合を作成します(この例ではchildone)。
    2. 「RESTアダプタ」トリガー接続を追加します。
      これにより、アダプタ・エンドポイントの構成ウィザードが呼び出されます。
    3. ウィザードのページで必要な詳細を指定します。
    4. サマリー・ページで構成を確認し、「完了」をクリックします。 この例では、次の値が構成されています:
      • 相対リソースURIは/empです。
      • 動詞(メソッド)はGETです。
      • レスポンス・メディアはJSONです。

      「サマリー」ページには、RESTエンドポイントのサマリー、説明およびエンドポイントのサマリーが表示されます。 このイメージでは、エンドポイント・サマリー値について説明します。

    5. マッパーでマッピングを実行します。
    6. 統合をアクティブ化します。
  2. RESTアダプタ・トリガー接続を使用した2番目の子統合を作成およびアクティブ化します。
    1. 2番目のアプリケーション駆動型のオーケストレーション統合を作成します(この例では、childtwo)。
    2. 2つ目の「RESTアダプタ」トリガー接続を追加します。
    3. 2番目の「RESTアダプタ」を最初の「RESTアダプタ」と同じ値で構成します。
    4. マッパーでマッピングを実行します。
    5. 統合をアクティブ化します。
  3. 親統合を作成してアクティブ化します。
    1. アプリケーション主導のオーケストレーション統合を作成します。
    2. 「RESTアダプタ」トリガー接続を追加します。
    3. 「リクエスト・パラメータ」ページでのcodeおよびversion問合せパラメータの作成など、ウィザードのページで必要な詳細を指定します。
    4. サマリー・ページで構成を確認し、「完了」をクリックします。 この例では、次の値が構成されています:
      • 相対リソースURIは/employeeinfoです。
      • 動詞(メソッド)はGETです。
      • 問合せパラメータは、codeおよびversionです。
      • レスポンス・メディアはJSONです。
      「サマリー」ページには、RESTエンドポイントのサマリー、説明およびエンドポイントのサマリーが表示されます。 このイメージでは、エンドポイント・サマリー値について説明します。
    5. 統合に「統合」アクションを追加します。
      これにより、統合アダプタ・ウィザードが起動します。
    6. 起動する子統合を選択します。 この例では、「児童子」が選択されています。

      「統合の選択」ページに統合リストが表示されます。 子one統合が選択されています。

    7. 操作を選択します。

      「選択操作」ページには、操作フィールドが表示され、getEmployeeが選択されています。

    8. ウィザードを完了し、「完了」をクリックします。
    9. codeおよびversionソース問合せパラメータをcodeおよびversionターゲット・ローカル統合要素にマップします。

      マッパーには、LocalIntegration要素の下に表示されるターゲット・コードおよびバージョン要素にマップされたソース・コードおよびバージョン要素が表示されます。

    10. 統合における残りのアクションの完全な設計。
    11. 統合をアクティブ化します。
      親統合は子統合のみを起動するように設計されていても、次のエンドポイントでその子統合のコードおよびバージョンを置換することで、いずれかの子統合を起動できるようになりました。
      http://host_name:port/ic/api/integration/v1/flows/rest/DYNAMIC_INVOKE/1.0/employeeinfo?
      code=[code-value]&version=[version-value]

      親の統合ボックスは、実線の矢印でChild 1というラベルのボックスに接続され、Child 2というラベルのボックスには点線の矢印が付いています。 子1と子2はランタイム・ボックスに接続します。