[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]
 *2Actionメッセージ送信時 [#twoactioninitiate]
 *2Actionメッセージ受信時 [#twoactionrespond]
 *サンプルコード [#highlevelapisample]
 下図に1Actionメッセージ受信時のアクティビティダイアグラムを示します。
 #ref(OneActionRespond.png)
 
 EISは、取引先からのメッセージを以下のように処理する必要があります。
 -ステータスが受け入れ待ち(''STATE_WAIT_ACCEPTANCE'')のセッションをSessionManagerより取り出す。
 -セッションを処理し、''受け入れ''または''拒否''する。
 
 

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

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