長期間の処理を含む Web サービスを設計するには

WebLogic Workshop は、会話という概念を導入して、長期の処理シーケンスにわたって Web サービスのステートを管理(クラス メンバー変数に格納)し、Web サービスとクライアントおよびコントロール間のメッセージを関連付けます。会話を使用するには、各メソッドまたはコールバックの会話プロパティを、会話の開始、続行、または終了に設定します。start メソッドが呼び出されると、WebLogic Server は Web サービスのステート用に新しいレコード(会話インスタンス)を作成します。continue メソッドまたはコールバックが呼び出されると、会話のステートにアクセスできるようになります。finish メソッドまたはコールバックが完了すると、会話ステートが削除され、サーバ リソースが解放されます。

Web サービスの会話の動作を指定するには

  1. デザイン ビューで、会話を開始するメソッドを選択します。

  2. プロパティ ペインで、会話プロパティを展開します。

  3. フェーズ属性のドロップダウン リストから、start を選択します。

  4. 会話を開始するメソッドごとに手順 1 から 3 を繰り返します。

  5. 会話を続行するメソッドを選択します。

  6. プロパティ ペインで、会話プロパティを展開します。

  7. フェーズ属性のドロップダウン リストから、continue を選択します。

  8. 会話を続行するメソッドごとに手順 5 から 7 を繰り返します。

  9. 会話を終了するメソッドを選択します。

  10. プロパティ ペインで、会話プロパティを展開します。

  11. フェーズ属性のドロップダウン リストから、finish を選択します。

  12. 会話を終了するメソッドごとに手順 9 から 11 を繰り返します。

会話の有効期間を指定するには

会話はサーバ リソースを表し、可能なときには解放する必要があります。会話のメソッドを作成してそれらが会話フェーズにどのような影響を与えるかを設定できるのに加え、会話の有効期間またはアイドル期間をコンフィグレーションできます。これらのプロパティを設定した場合、指定した期間が経過すると、会話メソッドが呼び出されていなくても(または呼び出されないので)会話が解放されます。

continue または finish メソッドがいつ呼び出されるか、または呼び出されるかどうかに関係なく会話の最長有効期間を設定するには、Web サービスの conversation-lifetime プロパティの max-age 属性を設定します。

会話の最長アイドル時間(メソッド呼び出し間の最長経過時間)を設定するには、Web サービスの conversation-lifetime プロパティの max-idle-time 属性を設定します。

関連トピック

会話を使用してステートを保持する

@jws:conversation-lifetime タグ