[Seasar-user:7934] Re: [Seasar,Teeda]Session 破棄時のセッションDto参照で例外発

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2007年 5月 30日 (水) 17:00:24 JST


小林 (koichik) です.

Date:    Wed, 30 May 2007 16:26:20 +0900
From:    <[E-MAIL ADDRESS DELETED]>
To:       <[E-MAIL ADDRESS DELETED]>
Subject: [Seasar-user:7932] Re: [Seasar,Teeda]Session 破棄時のセッションDto参照で例外発

> getAttributeNames()で、TestDtoも含め、
> 名称はきちんと表示されます。
> そこで、デバッグで内容を参照すると、
> nullになっており、
> 参照できない状態です。

セッションにキーが残っていても値が null なら
Seasar2 ではどうしようもないですね.

なお,Servlet 2.4 の仕様書には次のように書かれています.

SRV.1.6.1 HttpSessionListener.sessionDestroyed

In the previous versions of the specification, 
this method was defined as:

    Notification that a session was invalidated.

As of Version 2.4, this method is changed to:

    Notification that a session is about to be invalidated

so that it notifies before the session invalidation. 

もしお使いの Web コンテナが Servlet2.3 に準拠するもの
(Tomcat 4.x や WAS 5.x など) であれば,sessionDestroyed() が
呼び出された時点ではセッションは invalidated な状態なので
属性を取得できなくて当然かもしれません.
Servlet2.4 に準拠するもの (Tomcat 5.x や WAS6.x など) であれば
属性を取得できてもいいように思います.


--
<signature>
   <name>Koichi Kobayashi</name>
   <e-mail>[E-MAIL ADDRESS DELETED]</e-mail>
</signature>




Seasar-user メーリングリストの案内