- - PR -
セッションタイムアウト時の処理について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-10-10 14:13
現在Struts1.0.2を用いてWEBアプリケーションの構築を行っています。
セッションタイムアウト時にエラー画面に遷移させる、という処理を追加しようと思っています。 そこで一つおききしたいのですが、どこでどのような処理を行うのが最適(一般的)なのでしょうか? 以前参加していたプロジェクトでは、アクションクラスでセッションに格納済みのオブジェクトがnullだったら・・・ みないなことをしていましたがどうなんでしょうか? よろしくお願いします。 [ メッセージ編集済み 編集者: わんこ 編集日時 2003-10-10 14:14 ] | ||||
|
投稿日時: 2003-10-10 19:05
いろいろと実装方法がありそうですが、セッションが生成されているべきパスでセッションがタイムアウトしているかどうかは、
・HttpServletRequest.getSession(false) で null が返ってくるか ・HttpServletRequest.getSession(true).isNew() で true が返ってくるか といったところでしょうか。 それを Filter/ActionServlet(の継承クラス)/アクションクラス のいずれかで検証するのが良いかと思います。 | ||||
|
投稿日時: 2003-10-14 13:09
インギさん、ありがとうございます。
検証するクラスは、Actionを拡張したクラスでやろうと思っていたので そこに処理を追加してみました。 1.HttpServletRequest.getSession(true).isNew() はOKでした。 2.HttpServletRequest.getSession(false) で null が帰ってきません。 1ができたので、あとはパスの判定を付け加えてみます。 1でやるとしても2が気になります・・・ とにかくありがとうございました。 | ||||
|
投稿日時: 2003-10-14 14:03
何度もすみません。
パスの判定についてお聞きしたい事があります。 トップページ以外は全てセッションタイムアウト時の処理を行いたいと思っています。 ・Action拡張クラスのロジック内で該当パスを直接書く。 ・ActionMappingの拡張クラスにプロパティを追加してstruts-config.xmlでフラグを設定する。(そのフラグをAction拡張クラスで判定する) のどちらにしようか悩んでいます。 やっぱり2番目かな・・・と傾きかけてます。 アドバイスお願いします | ||||
|
投稿日時: 2003-10-14 14:15
>2.HttpServletRequest.getSession(false) で null が帰ってきません。
たぶん、Strutsのどこかで既に getSession() が呼ばれてるのでしょうね。 >パスの判定についてお聞きしたい事があります。 >トップページ以外は全てセッションタイムアウト時の処理を行いたいと思っています。 Strutsにこだわらずに、Filter で処理してみてはいかがでしょうか? アプリケーション(やActionクラス)の中でタイムアウトに関係する処理を盛り込む必要がなりますし、万が一 JSP が直接呼ばれてもタイムアウト画面を出せますよ。 ・[WebLogic8.1]-[フィルタ] http://edocs.beasys.co.jp/e-docs/wls/docs81/webapp/filters.html | ||||
|
投稿日時: 2003-10-14 14:25
これってJSPのsession属性のデフォルトがtrueだからではないでしょうか? | ||||
|
投稿日時: 2003-10-14 14:37
インギさん、何度もありがとうございます。
>たぶん、Strutsのどこかで既に getSession() が呼ばれてるのでしょうね。 なるほど!!そういわれるとそうですね >Strutsにこだわらずに、Filter で処理してみてはいかがでしょうか? そうですね。 今回のプロジェクトでは、Strutsを拡張したものが既にあり 他の似たような処理もAction拡張クラス(これを個々のActionクラスが継承する)に書いたのでそこに付け足そうかな・・・と思ったのでした。JSPが直接呼ばれた場合の処理も実装済みです。 Filterで、この処理はやったことがないので、URLなどを参考にして、 次回などで使用できるようにしたいです インギさん、ありがとうざいました [ メッセージ編集済み 編集者: わんこ 編集日時 2003-10-14 14:39 ] |
1