- - PR -
sessionについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-10-28 11:08
sessionについて勉強しています。
開発環境は Tomcat5.5 IE6 JSP 実際にしたいことは http://www.thinkit.co.jp/free/tech/7/4/1.html の『セッションIDの搬送方法とリクエストフォージェリー 』見出しにある hiddenフィールドでのsession管理を実現したいと思っています。 検証内容 session.jsp sessionにデータをセットして、フォームでview.jspに遷移します ↓ view.jsp session.jspでセットしたデータを表示 IEのインターネットオプションのプライバシーの設定で 1『中』 2『すべてのCookieをブロック』 を設定した場合で動作検証をしています。 1はsessionにセットしたデータを表示してくれます。 2はNULL値が帰ってきます。 Cookieをブロックしている場合にsessionにセットしたデータを 戻すことはできるのでしょうか? 教えて下さい。 |
|
投稿日時: 2008-10-28 11:34
JavaのServletAPIの場合、hiddenフィールドでセッション管理というのはできません。
厳密に言うと、完全に自前でフル実装するなら好きなように出来ますが、 クッキーが利用できない場合、URLに、 ;jsessionid=9147912749172497 という感じでセッションIDを付けないと、 ServletAPIのHttpSessionオブジェクトをセッションとして利用できません。 |
|
投稿日時: 2008-10-28 12:12
かつのり先生、どうもです。
再度修行します。 ユーザがブラウザ設定で『すべてのCookieをブロック』している場合は エラー出力とします。 |
|
投稿日時: 2008-10-29 00:12
単に mod_rewrite で ";jsessionid=...." を削除してしまう方法はいかがでしょうか?
アプリケーションでなにも処理する必要がなくなります。 |
|
投稿日時: 2008-10-29 11:29
インギ先生ありがとうございます。
mod_rewriteを調査中です。 まだ理解できませぬ。 rewriteって view.jsp;jsessionid=xxx → view.jsp にするって事ですよね。 jsessionidはどこに保存されるのでしょうか 教えてください。 |
|
投稿日時: 2008-10-29 12:16
>view.jsp;jsessionid=xxx → view.jsp
はい。ご認識の通りです。 >jsessionidはどこに保存されるのでしょうか 質問の意図がよくわからなかったのですが、jsessionidが保存される可能性があるのは ・htmlに含まれるaタグのリンクとしてブラウザのメモリ上、キャッシュ上 ・サーブレットコンテナのヒープ上 ・プロキシサーバのメモリ上 ・サーブレットコンテナがセッションを永続化していればファイルやデータベース上 といったところでしょうか。 |
|
投稿日時: 2008-10-29 14:22
インギ先生、ありがとうございます。
質問の意図失礼致しました。 話が戻ってしまいますが mod_rewrite で ";jsessionid=...." を削除した場合 ブラウザが『すべてのCookieをブロック』している状況で view.jspでsession.jspにセットしたデータが表示出来るって事でしょうか? [ メッセージ編集済み 編集者: Pucci 編集日時 2008-10-29 14:22 ] |
1