Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 拡張編


6.4.4 データベースセッションフェイルオーバ機能で発生するイベントに関連して動作するリスナ

データベースセッションフェイルオーバ機能を使用する場合,グローバルセッションの引き継ぎが発生したタイミングでjavax.servlet.http.HttpSessionActivationListenerインタフェースのsessionDidActivate()メソッドが呼び出されます。また,このときjavax.servlet.http.HttpSessionListenerインタフェースのsessionCreated()メソッドは呼び出されません。

HTTPセッションを使用する処理では,Java EEで規定されたイベントに対応してHTTPセッションに関連するリスナが動作します。HTTPセッションに関連するリスナとは,次のインタフェースを実装したクラスです。

データベースセッションフェイルオーバ機能を使用する場合,HTTPセッションに関連するリスナはデータベースセッションフェイルオーバ機能のイベントを契機として動作します。

Java EEで規定されたイベントとデータベースセッションフェイルオーバ機能で発生するイベントの対応,およびイベントを契機として動作するリスナについて次の表に示します。

表6‒13 データベースセッションフェイルオーバ機能で発生するイベントと動作するリスナ

項番

Java EEで規定されたイベント

対応するイベント(データベースセッションフェイルオーバ機能使用時)

動作するリスナ

1

HTTPセッション作成

HTTPセッション作成

javax.servlet.http.HttpSessionListenerインタフェースのsessionCreated()メソッド

2

HTTPセッション無効化

  • HTTPセッション無効化

  • Webアプリケーション停止

  • javax.servlet.http.HttpSessionListenerインタフェースのsessionDestroyed()メソッド

  • javax.servlet.http.HttpSessionAttributeListenerインタフェースのattributeRemoved()メソッド

  • javax.servlet.http.HttpSessionBindingListenerインタフェースのvalueUnbound()メソッド

3

HTTPセッションの属性追加

HTTPセッションの属性追加

  • javax.servlet.http.HttpSessionAttributeListenerインタフェースのattributeAdded()メソッド

  • javax.servlet.http.HttpSessionBindingListenerインタフェースのvalueBound()メソッド

4

HTTPセッションの属性変更

HTTPセッションの属性変更

javax.servlet.http.HttpSessionAttributeListenerインタフェースのattributeReplaced()メソッド

5

HTTPセッションの属性削除

  • HTTPセッションの属性削除

  • Webアプリケーション停止

  • javax.servlet.http.HttpSessionAttributeListenerインタフェースのattributeRemoved()メソッド

  • javax.servlet.http.HttpSessionBindingListenerインタフェースのvalueUnbound()メソッド

6

セッションの活性化

グローバルセッションの引き継ぎ

javax.servlet.http.HttpSessionActivationListenerインタフェースのsessionDidActivate()メソッド

7

セッションの非活性化

(対応するイベントなし)

(動作するリスナなし)

注※ イベント発生時に属性が追加されていた場合です。

このほかのリスナの動作については,データベースセッションフェイルオーバ機能を使用しない場合と同じです。