[ADOS] ADOS Developer's Site - XML Stadium
ADOS Company slogan - XML Total Solution
RIGHT:[[目次>Hestia Hacks#SDKDevDuide]]|[[前>低水準API]]|[[次>EISサンプル実装]]

#contents

高水準API群でも低水準API群と同様にPayloadContainerとStatusContainerを最終的には利用しますが、直接Containerを用いてやりとりするのではなく''Sessionオブジェクト''を利用した、より高水準なオブジェクトのやりとりを行うことができます。

また、高水準API群を利用する場合、EIS側にSessionオブジェクトを格納するDBMSを用意し、メッセージはDBMS内に永続化されます。現在サポートされているDBMSはOracle(9i以上)、MySQL(4.1以上)、PostgreSQL(7.4以上)です。

*概念図 [#sessiondescription]
#ref(SessionDesc.png)

低水準APIのときと同様に、EIS側はHestiaとの送受信にRMI/JMSの意識をする必要はありません。またSessionオブジェクトがDBMSへ格納されていることを意識する必要もありません。EISは、SDKが提供するSessionManagerからSessionオブジェクトの取り出しを行うことになります。

*Sessionステータス [#sessionstatus]
Sessionオブジェクトは以下のいづれかの''ステータス''を持ちます。状況に応じてステータスは変化します。
|ステータス名|説明|h
|STATE_CREATED|セッションが作成された時点のステータスです|
|STATE_READY_TO_SEND_MESSAGE|Hestiaへのメッセージ送信待ち状態のステータスです|
|STATE_READY_TO_SEND_STATUS|Hestiaへのステータス送信待ち状態のステータスです|
|STATE_WAIT_STATUS|Hestiaからの応答ステータス待ち状態のステータスです|
|STATE_WAIT_MESSAGE|取引先からの応答メッセージ待ち状態のステータスです|
|STATE_WAIT_ACCEPTANCE|セッションが承諾待ち状態のステータスです|
|STATE_WAIT_PREPARE_RESPOND|2Actionメッセージの場合の、2アクション目のメッセージ作成待ち状態のステータスです|
|STATE_IDLE|セッションが正常に終了した時点のステータスです(メッセージ送信時) 但し、NoFを受信し別ステータスに遷移する可能性があります|
|STATE_FINISHED|セッションが正常に終了した時点のステータスです(メッセージ受信時)|
|STATE_ERROR|何らかの理由によりセッションが異常終了した場合のステータスです|

*1Actionメッセージ送信時 [#oneactioninitiate]
下図に1Actionメッセージ送信時のアクティビティダイアグラムを示します。
#ref(OneActionInitiation.png)
前提条件として、低水準APIと同様にServiceContentのvalidationはEIS側で行う必要があります。


EISは、Hestiaへ送信依頼したメッセージがどのようにハンドリングされたか、以下のセッションステータスにより知ることができます。
-送信したメッセージの処理に成功した(''STATE_IDLE'')
-何らかの理由により失敗した(''STATE_ERROR'')
-取引先からシグナルメッセージが戻っていない(''STATE_WAIT_STATUS'') ((この場合、EIS側から再送処理を行う必要はありません。Hestiaはパブリックプロセスで定義された再送処理を自動的に行います))


*1Actionメッセージ受信時 [#oneactionrespond]
下図に1Actionメッセージ受信時のアクティビティダイアグラムを示します。
#ref(OneActionRespond.png)

EISは、取引先からのメッセージを以下のように処理する必要があります。
-ステータスが受け入れ待ち(''STATE_WAIT_ACCEPTANCE'')のセッションをSessionManagerより取り出す。
-セッションを処理し、''受け入れ''または''拒否''する。


トップ   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

Copyright 2005-2008. ADOS Co., Ltd. All Rights Reserved.