RIGHT:[[目次>Hestia Hacks#SDKDevGuide]]|[[前>JavaObjectのハンドリング]]|[[次>EIS振分条件の設定]]
RIGHT:[[目次>Hestia Hacks#SDKDevGuide]]|[[前>JavaObjectのハンドリング]]|[[次>低水準API]]
HestiaとEISの連携には、J2EEテクノロジであるRMI(Remote Method Invocation)またはJMS(Java Message Service)を利用することが出来ます。
HestiaとEISの連携には、J2EEテクノロジであるRMI(Remote Method Invocation)を利用します。ディベロッパは低水準J2EE APIを直接実装する必要はありません。RMIの利用を意識することなくプライベートプロセスの実装に専念することが出来ます。
いづれの連携方式を選択する場合にも、低水準J2EE APIを直接実装する必要はありません。ディベロッパはRMI/JMSの利用を意識することなくプライベートプロセスの実装に専念することが出来ます。
EISはHestia側にストアされたメッセージをポーリングすることになります。EISがポーリングを行うまでHestiaはビジネスメッセージを内部データベースに保存しますので、EISはその処理能力に応じてメッセージのハンドリングを行うことが出来ます。
RMI/JMSいづれの連携方式の場合にも、EISはHestia側にストアされたメッセージをポーリングすることになります。EISがポーリングを行うまでHestiaはビジネスメッセージを内部データベースに保存しますので、EISはその処理能力に応じてメッセージのハンドリングを行うことが出来ます。
*RMIによる連携 [#p5d85931]
EISとの連携にRMIを選択した場合、Hestiaはリモートインターフェースを提供するサーバとなり、EISはHestia SDKを利用してビジネスメッセージ/シグナルメッセージの送受信を行います。
#ref(figure4.png)
*JMSによる連携 [#xf6e4cd2]
EISとの連携にJMSを選択した場合、HestiaはEISとのビジネスメッセージのやりとりにメッセージキューを利用します。
またHestiaはEISとの連携においてトランザクションをサポートします。
SDKにてHestiaとのメッセージ送受信を行う際、オートコミットモードをOFFにした場合は、EISは自身の処理を確実に終えた後でトランザクションコミットを行う必要があります。
コミットが行われなかった場合、Hestiaは一定時間後に((サーバオプションによりトランザクション無効化期限を設定可能))トランザクションをロールバックします。
#ref(figure5.png)
Hestiaは標準設定ではJMSプロバイダとしてHestiaサーバ上の[[JBoss Messaging:http://www.jboss.com/products/messaging]]を使用しています。