クライアント・アプリケーションで会話の反復をすべて管理するには、
IMSInteractionSpec クラスの useConvID プロパティーを true に設定する必要があります。
このタスクについて
クライアント管理の会話状態プログラミング・モデルを使用して Java クライアントで IMS™ 会話型トランザクションを使用可能にするには、次のようにします。
手順
- IMSConnectionFactory オブジェクトから、接続ハンドルを取得します。
このプログラミング・モデルでは、後続の反復で、同一の、または異なる接続ハンドルを
使用できます。これらの接続ハンドルは、同じ IMSConnectionFactory インスタンスから取得したものでなければなりません。
- IMSInteractionSpec の useConvID プロパティーを true に設定します。このプロパティーは、会話のすべての反復で TRUE になっている必要があります。
会話の間に useConvID フラグに変更があると、エラーが発生します。
- IMSInteractionSpec commitMode プロパティーを 1 に設定します。
- アプリケーションの設計に基づいて、syncLevel プロパティーに適切な値を設定します。
- 最初の反復で、IMSInteractionSpec convID プロパティーの値を空ストリングに設定します。
- 最初の反復を除くすべての反復で、convID プロパティーの値を、
前の反復で戻された convID プロパティーの値に設定します。
- クライアント・アプリケーションが会話の終わりを制御する場合、最後の反復で、IMSInteractionSpec interactionVerb プロパティーを SYNC_END_CONVERSATION に設定します。
推奨: クライアント管理の会話状態プログラミング・モデルでは、
クライアント・アプリケーションまたはサーブレットでの要求ごとに、
アプリケーション全体の参照ではなく、ローカル参照を使用します。
この方法は、会話型データの保全性を侵害する可能性のある、
ストレスや負荷が原因でクライアント・アプリケーションに発生する
すべての競合状態を回避することを目的としています。
クライアント・アプリケーションがブラウザー・ベースである場合、
会話型要求が誤って再サブミットされることがないように、
ナビゲーションを慎重に設計する必要があります。
このシナリオは、ユーザーがブラウザーで「戻る」ボタンを押した際に起こる可能性があり、
会話型要求がもう一度再サブミットされ、結果的に余分な会話が生じます。