[Seasar-user:20019] Re: セッションタイムアウトによるエラー画面遷移

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2010年 7月 29日 (木) 17:00:36 JST


小林 (koichik) です.

Date:    Thu, 29 Jul 2010 16:08:47 +0900
From:    "kawai" <[E-MAIL ADDRESS DELETED]>
To:      <[E-MAIL ADDRESS DELETED]>
Subject: [Seasar-user:20016] Re: セッションタイムアウトによるエラー画面遷移

> ちなみに、検知の処理は以下の方法で問題ないでしょうか?
> 
> HttpSession session = request.getSession(false);
> 
> if(session.isNew()){
>    //エラー時の処理(例外をthrow)
>  }

getSession(boolean) の引数に false を指定した場合で
セッションが存在しない (タイムアウトした) 場合,
戻り値は null になります.

http://download-llnw.oracle.com/javaee/6/api/javax/servlet/http/HttpServletRequest.html#getSession(boolean)

なので,

> if(session.isNew()){

ではなく,

if (session == null) {

ですね.

エラーページへの遷移は例外をスローする方法以外に,
リダイレクトするという方法もあります.
その場合は web.xml (Filter の場合)/teedaErrorPage.dicon
(インターセプタの場合) に設定をする必要はありません.


-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>



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