Cosminexus V9 BPM/ESB基盤 サービスプラットフォーム 解説

[目次][用語][索引][前へ][次へ]

2.5.2 サービス部品呼び出し時のメッセージの流れ

HCSCサーバのリクエスト受付は,MDB(Message Driven Bean)で動作し,HCSCサーバ側の受信用共用キューを監視しています。HCSCサーバ側の受信用共用キューにメッセージが送信されると,メッセージを取り出してサービス部品を呼び出します。

TP1/EE側のサービスリクエスタからは,受信用共用キューがあるデータベースに対して,直接アクセスしてメッセージを送信します。

サービスリクエスタ側の送信用共用キューには,宛先となるキュー名を設定します(開発環境のサービスアダプタ定義画面で設定します)。

宛先となるTP1/EE側のDBキュー(受信用共用キュー)は,TP1/EEのコマンドを使用して作成します。なお,TP1/EE側のDBキューは,送信用共用キューがある同一データベース内(同一のHiRDBシステム内)に作成する必要があります。非同期(MDB(DBキュー))の場合の宛先の指定について次の図に示します。

図2-42 非同期(MDB(DBキュー))の場合の宛先の指定

[図データ]

注意
実行環境内とHiRDBに別々のキューがそれぞれ作成されるわけではありません。データベース上のキューは同一のシステム上に作成されるため,実行環境内のキューとHiRDBのキューは同じものになります。TP1/EE側のDBキューも同様です。

DBキューの作成の詳細については,マニュアル「TP1/Server Base Enterprise Option 使用の手引」のDBキューに関する内容を参照してください。

<この項の構成>
(1) TP1/EEからサービス部品を呼び出す場合
(2) TP1/EEのサービス部品を呼び出す場合

(1) TP1/EEからサービス部品を呼び出す場合

サービスリクエスタからサービス部品を呼び出すときに,受信用共用キューに送信するメッセージの形式は,BytesMessageです。

呼び出すサービス名やクライアント相関IDなどのパラメタを設定したHCSCサーバ用DBキューヘッダをバイナリ形式で作成し,そのあとに要求電文(バイナリ形式)を組み立てます。これによって,要求電文(バイナリ形式)の内容が,ユーザ電文としてサービス部品に伝わります。サービスリクエスタから標準受付(MDB(DBキュー))を呼び出すとき,サービス部品側の電文フォーマットに合わせた要求電文を事前に作成し,ペイロードに設定してメッセージを送信します。TP1/EEからサービス部品を呼び出すときのユーザ電文と電文フォーマットの関係を次の図に示します。

図2-43 TP1/EEからサービス部品を呼び出すときのユーザ電文と電文フォーマットの関係

[図データ]

バイナリデータを作成する方法については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「8.6.4 バイナリデータを作成する(TP1/EE,JMS)」を参照してください。

(2) TP1/EEのサービス部品を呼び出す場合

サービスアダプタからサービス部品を呼び出すときに送信用共用キューに送信するメッセージの形式は,BytesMessageです。

サービスアダプタに定義した電文フォーマットに合わせた要求電文をバイナリ電文としてメッセージに設定します。TP1/EEのサービス部品を呼び出すときのユーザ電文と電文フォーマットの関係を次の図に示します。

図2-44 TP1/EEのサービス部品を呼び出すときのユーザ電文と電文フォーマットの関係

[図データ]