- - PR -
HttpSessionBindingListenerについて
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2004-03-18 14:47
はじめまして、初めて投稿します。
おすです。 HttpSessionBindingListenerを実装したクラスのインスタンス(以下Aとする)を セッションに格納し、セッションがタイムアウトしたときに、 Aの中から、セッションにアクセスしたいと思っているのですが これは可能でしょうか? HttpSessionBindingListener#valueUnBlundメソッドの引数である HttpSessionBindingEventのgetSessionメソッドで セッションが取れるとAPIドキュメントにあるのですが セッションタイムアウトしているので取れないのでは?と思ったりもしています。 ご存知の方、ぜひご教授お願いします。 |
|
投稿日時: 2004-03-18 15:25
Servlet仕様2.3 / 2.4 を確認してみましたが、どちらでも
「The valueUnbound method must be called after the object is no longer available via the getAttribute method of the HttpSession interface. 」 「Notifies the object that it is being unbound from a session and identifies the session. 」 と記述されています。getAttribute() メソッドより取得できなくなったタイミングなので、既にセッションが invalidate された後に呼ばれたのではタイミング的に遅すぎます。セッションがタイムアウトする際には先に valueUnbound 一通り呼ばれてからセッションが invalidate されると考えるのがリーズナブルですね。 実際 WebLogic で検証してみたところちゃんと取得できるみたいです。(WLS 8.1 SP2) っていうか尋ねる前にまずお使いのコンテナで試してみてはいかがでしょうか? |
|
投稿日時: 2004-03-18 15:49
おすです。
インギさん。 セッションは取れるとの回答、ありがとうございました。 この前提で設計をしていたのですが、不安になって調査もせずに投稿してしまいました。 期日が切迫しているのと、環境がないというのがありまして・・・。お許しください。 APサーバはtomcat4.1.27を使います。 |
1
