ここでは、SOAPアダプタ利用時のシーケンス処理について、以下のパターンに分けて説明します。
SOAPメッセージの受信
SOAPメッセージの送信
添付ファイルの操作
SOAPメッセージの受信
SOAPアダプタを利用して、SOAPメッセージを受信する場合のシーケンス定義は以下のようになります。
SOAPボディの抽出
受信したSOAPメッセージから、SOAPボディを抽出します。
SOAPボディの抽出には、“SOAPメッセージの操作”メディエータファンクションの“SOAPボディ要素を取得”を利用します。
XMLの変換
抽出したSOAPボディを出力メッセージの形式にあわせて変換します(この例では、SOAPボディを固定長メッセージに変換しています)。
固定長メッセージへの変換には、“固定長メッセージの変換”メディエータファンクションを利用します。
XMLへの変換には、“XMLメッセージの変換”を利用します。
連携システムの呼び出し
変換したメッセージを使い、連携システムを呼び出します。連携システムの呼び出しには“サービス呼出し”のメディエータファンクションを利用します。
XMLへの変換
入力メッセージをSOAPボディ用のXMLに変換します(この例では、固定長メッセージからSOAPボディ用のXMLへ変換しています)。メッセージ交換パターンがOneway方式の場合、このステップは省略できます。
固定長メッセージからSOAPボディ用のXMLへ変換する場合は、“固定長メッセージの変換”を利用します。
XMLからSOAPボディ用のXMLへ変換する場合は、“XMLメッセージの変換”を利用します。
SOAPメッセージの作成
Webサービス呼び出し用のSOAPメッセージを作成します。メッセージ交換パターンがOneway方式の場合、このステップは省略できます。
SOAPメッセージの作成には、“SOAPメッセージの操作”メディエータファンクションの“SOAPメッセージの作成(SOAPボディのみ)”を利用します。
SOAPヘッダのあるSOAPメッセージを作成する場合は、“SOAPメッセージの操作”メディエータファンクションの“SOAPメッセージの作成”を利用します。
また、ISIでSOAPメッセージを受信するには、SOAP受信用のサービスエンドポイント定義を作成します。
ISIのSOAPアダプタでは、Oneway方式とRequestResponse方式の2つのメッセージ交換パターン(MEP:Message Exchange Patterns)を使うことができます。それぞれのメッセージ交換パターンでのサービスエンドポイント定義作成方法については以下を参照してください。
SOAPメッセージの送信
SOAPアダプタを利用して、SOAPメッセージを送信する場合のシーケンス定義は以下のようになります。
XMLへの変換
入力メッセージをSOAPボディ用のXMLに変換します(この例では、固定長メッセージからSOAPボディ用のXMLへ変換しています)。
固定長メッセージからSOAPボディ用のXMLへ変換する場合は、“固定長メッセージの変換”を利用します。
XMLからSOAPボディ用のXMLへ変換する場合は、“XMLメッセージの変換”を利用します。
SOAPメッセージの作成
Webサービス呼び出し用のSOAPメッセージを作成します。SOAPメッセージの作成には、“SOAPメッセージの操作”メディエータファンクションの“SOAPメッセージの作成(SOAPボディのみ)”を利用します。
SOAPヘッダのあるSOAPメッセージを作成する場合は、“SOAPメッセージの操作”メディエータファンクションの“SOAPメッセージの作成”を利用します。
Webサービスの呼び出し
SOAPアダプタを呼び出してWebサービスを呼び出します。SOAPアダプタの場合は、“同期サービス呼び出し”、または、“ルーティングして同期サービス呼び出し”のメディエータファンクションを選択します。
この例では、“同期サービス呼び出し”でWebサービスを呼び出しています。
また、SOAPアダプタでは、Oneway方式とRequestResponse方式の2つのメッセージ交換パターンを選択できます。
それぞれのメッセージ交換パターンでのサービスエンドポイント定義作成方法については以下を参照してください。
SOAPボディの抽出
受信したSOAPメッセージから、SOAPボディを抽出します。メッセージ交換パターンがOneway方式の場合、このステップは省略できます。
SOAPボディの抽出には、“SOAPメッセージの操作”メディエータファンクションの“SOAPボディ要素を取得”を利用します。
XMLの変換
抽出したSOAPボディを出力メッセージの形式にあわせて変換します(この例では、SOAPボディを固定長メッセージに変換しています)。メッセージ交換パターンがOneway方式の場合、このステップは省略できます。
固定長メッセージへの変換には、“固定長メッセージの変換”メディエータファンクションを利用します。
XMLへの変換には、“XMLメッセージの変換”を利用します。
添付ファイルの操作
ここでは、SOAPアダプタを利用して受信した、添付ファイルを操作する場合のシーケンス定義について説明します。
SOAPアダプタでは以下のタイミングで添付ファイルを受信します。
インバウンドのSOAPアダプタでSOAPの要求メッセージを受信した時
アウトバウンドのSOAPアダプタでSOAPの応答メッセージを受信した時
添付ファイルを操作したい場合は、これらのタイミングで添付ファイル操作用のユーザプログラム呼出し用メディエータファンクションを呼び出します。
添付ファイル操作用メディエータファンクションを使い、添付ファイルを操作する場合のシーケンスは以下のようになります。
添付ファイルの操作
インバウンドのSOAPアダプタで受信した添付ファイルを操作するには、シーケンスの先頭で添付ファイル操作用のユーザプログラム呼出し用メディエータファンクションを呼び出します。
添付ファイル操作用のユーザプログラム呼出し用メディエータファンクションの作成方法については、“6.1.5 添付ファイルを操作する”を参照してください。
SOAP呼び出し
SOAPアダプタを呼び出してWebサービスを呼び出します。詳しくは“SOAPメッセージの送信”を参照してください。
添付ファイルの操作
アウトバウンドのSOAPアダプタで受信した添付ファイルを操作するには、SOAP呼び出しの直後に添付ファイル操作用のユーザプログラム呼出し用メディエータファンクションを呼び出します。
添付ファイル操作用のユーザプログラム呼出し用メディエータファンクションの作成方法については、“6.1.5 添付ファイルを操作する”を参照してください。