Webサービスへのアウトバウンド・メッセージの送信
指定したエンドポイントURLでWebサービスにアウトバウンド・メッセージを送信するようにオブジェクト・ワークフローを構成できます。 エンドポイントURLは、アプリケーションとデータを共有し、Oracle service WSDLに準拠する必要がある外部Webサービスです。
たとえば、あるシステムから別のシステムに商談、リードまたはアカウント詳細などのオブジェクトを含むアウトバウンド・メッセージをトリガーに基づいて自動的に送信するオブジェクト・ワークフローを定義できます。

親または子オブジェクトのアウトバウンド・メッセージ・イベントを構成できます。 親オブジェクトを使用してワークフローを定義すると、その親オブジェクトのサービス・データ・オブジェクト(SDO)とその子オブジェクトを使用してアウトバウンド・メッセージが送信されます。 子オブジェクトを使用してワークフローを定義すると、子オブジェクトのみのSDOを使用してアウトバウンド・メッセージが送信されます。
アウトバウンド・メッセージ処理を定義するには:
-
アプリケーション・コンポーザのメイン・ページから、「オブジェクト・ワークフロー」を選択します。
-
「作成」をクリックします。
-
「オブジェクト」を選択し、作成するワークフローに意味のある「名前」および「摘要」を指定します。
-
「レコードが作成されたとき」または「レコードの更新時」イベント・ポイントを使用してトリガー条件を定義します。
-
「アウトバウンド・メッセージ」イベント・アクションを選択します。
これにより、作成処理が開きます: アウトバウンド・メッセージpage.
-
アウトバウンド・メッセージ・アクションの「名前」および「摘要」を指定し、アクションをトリガーするための「実行スケジュール」を設定します。 参照: このトピックの実行スケジュール。
-
外部Webサービスの「エンドポイントURL」を指定します。
外部Webサービスを構築するには、OutboundMessageService.wsdlおよび.xsdファイルを使用します。 次に、オブジェクト・ワークフローのアウトバウンド・メッセージ・イベント・アクションを定義するときに、外部WebサービスのエンドポイントURLを指定します。
たとえば、エンドポイントURLは
http://GlobalFusion:7011/OMTestOpportunity/OutboundMessageServiceSoapHttpPort
です。 実行時に、オブジェクト・ワークフローが定義されているオブジェクトの詳細を含むサービス・データ・オブジェクトが、指定されたエンドポイントURLに送信されます。 -
イベント・アクションを保存します。
実行スケジュール
イベント・アクションの定義中に、イベント・アクションの実行時期を制御する実行スケジュールをオプションで設定できます。 それ以外の場合は、イベント・アクションがただちに実行されます。 複数のイベント・アクションが構成されている場合、フィールド更新は、他のイベント・アクションがトリガーされる前に最初に実行されます。 フィールド更新以外のイベント・アクションの場合、特定のシーケンスはなく、イベント・アクションは実行スケジュールの構成の有無や方法に基づいてトリガーされます。
アウトバウンド・メッセージ・イベント処理とともにフィールド更新イベント処理もスケジュールされている場合、フィールド更新イベント処理が最初にトリガーされ、アウトバウンド・メッセージに更新済データが格納されます。
セキュリティに関する考慮事項
アウトバウンド・メッセージでは、認証のみのクライアント側セキュリティ・ポリシーまたは転送中にメッセージを保護するトランスポート・レベルのセキュリティ・ポリシーを使用できます。 オブジェクト・ワークフローのアウトバウンド・メッセージで使用されるデフォルトの認証のみのポリシーは、oracle/wss10_saml_token_client_policy
です。 このポリシーには、アウトバウンドSimple Object Access Protocol (SOAP)リクエスト・メッセージのSecurity Assertion Markup Language (SAML)トークンが含まれます。 このポリシーは、セキュア・ネットワーク・セグメント内にターゲットwebサービスがある場合にのみ使用してください。
対応するサービスでは、oracle/wss10_saml_token_service_policy
やoracle/wss_saml_or_username_token_service
などの互換性のあるサービス・ポリシーを使用できます。
サービスがファイアウォールの外側にある場合は、作成アクションで「メッセージの保護」オプションを選択して、メッセージを保護する必要があります: アウトバウンド・メッセージpage. 保護されている場合、アウトバウンド・メッセージは、デフォルトで有効になっている一方向セキュア・ソケット・レイヤー(SSL)でoracle/wss_username_token_over_ssl_client_policy
を使用します。 対応するサービスでは、oracle/wss_username_token_over_ssl_service_policy
などの互換性のあるサービス・ポリシーを使用する必要があります。
アウトバウンド・メッセージの保護
「メッセージの保護」オプションを使用する場合は、次の設定アクティビティを実行する必要があります:
-
アプリケーションには、アウトバウンド・メッセージの送信先のリモート・システムにアクセスするための資格証明が必要です。 サービス・リクエスト(SR)を記録して、リモート・システムにアクセスするためにこれらの資格証明を指定します。
-
リモート・システムで自己署名SSL証明書を使用している場合は、Oracle管理者がSSL証明書をインポートするためのSRを記録します。