「WebSphere MQ へのサービス・ファサード: 確認応答を伴う一方向」パターンの要求フロー
「WebSphere MQ へのサービス・ファサード: 確認応答を伴う一方向」パターンの要求フローに関する詳細 (ロギングおよび例外を含む)。
-
SOAP 要求は SOAP ノードによって受け取られます。パターン・パラメーターにより妥当性検査が必要と指定されている場合、要求は妥当性検査されます。
-
SOAP および HTTP ヘッダーを削除して、基本的な XML メッセージをプロバイダー・アプリケーションをターゲットとしたままにします。
-
次いでメッセージが要求処理サブフローに渡されます。これはパターン・インスタンスのカスタマイズ用の場所となります。
-
この時点までに発生する例外はすべてキャッチされ、SOAP 障害が呼び出し元に返されます。
障害が送信された後は、要求は処理されません。
-
例外が発生しなかった場合、メッセージは永続メッセージとしてプロバイダーの入力キューに書き込まれ、コミットされます。
フローは、書き込みが正常に行われた場合には、後続の例外が発生しても、メッセージが送信されなかったことを示す応答が要求元に送信されない構造になっています。
ただし、SOAP ノード上のタイムアウトによって SOAP タイムアウト障害が返される可能性は依然としてあります。
-
肯定の確認応答が SOAP 応答として要求元に返されます。
この応答には、Accepted というストリングによる単一の確認応答が含まれています。
-
要求のロギングが必要で、かつメッセージ・フローが正常に行われた場合には、着信メッセージをログに記録するためにロギング・サブフローが呼び出されます。
-
メッセージが書き込まれた後、確認応答の作成と送信を行う時に例外が発生した場合は、エラー・メッセージが必要であることがパターン・パラメーターで指定されているのなら、エラーを記録するためにエラー・サブフローが呼び出され、サブフローは正常に終了します。
メッセージはプロバイダー・キューに残るため、このエラーはデータの保持ではなく、単なる通知を目的としたものであり、メッセージの本体は含まれません。
エラー・メッセージがパターン・パラメーターに必要ではない場合、フローは正常に終了します。