いくつかのイベントに基づいてユーザーのセッションを無効にしたいと考えています。私は自分のsessionIDを保存します、このIDからHttpSessionを取得する方法は? HttpSessionContextクラスは置き換えずに非難されています。SessionIDからHttpSessionオブジェクトを取得する方法は?
4
A
答えて
3
サーブレット2.2はセキュリティ上の理由からこれを特に推奨していませんので、これを行うための正式な方法はありません。お勧めしませんが、Tomcatを使用している場合はManager.findSession()を使用することができます。
私は自分のアプリケーションからHttpSessionを削除しました。多くのサーバーが稼動しているときにセッションを同期させておくことは本当に難しいです。私たちは自分のマネージャーを書くことでそれを微調整しようとしましたが、それを正しく動作させることはできません。最後に、約500行のコードで独自のセッション実装を書いたので、はるかに優れています。
6
これを既に行っているメソッドは非推奨です。 しかし、HttpSessionListenerを使ってアイデアを実装することができます。新しいセッションが作成されたときにセッションIDをキーとしてHashMapに格納し、オブジェクトは実際のHttpSessionObjectになります。これで参照を得ることができます。
関連する問題
- 1. サーブレットからHTTPSessionからSpringプリンシパルユーザーを取得
- 2. WMIオブジェクト参照からWMIオブジェクトを取得する方法
- 3. jsonオブジェクトから情報を取得する方法、属性を取得する方法はありますか?
- 4. Flex/as3:NetStreamオブジェクトから名前を取得する方法は?
- 5. 外部キーからオブジェクトの値を取得する方法は?
- 6. プールから別のオブジェクトを取得する方法は?
- 7. CGImageRefオブジェクトからピクセルのRGB値を取得する方法は?
- 8. asp.netのログインユーザーからNetcredentialsオブジェクトを取得する方法は?
- 9. coredataからmin-idオブジェクトを取得する方法は?
- 10. AD UserPrincpalオブジェクトからNTログインを取得する方法は?
- 11. XmlDocumentオブジェクトからXML要素を取得する方法は?
- 12. RSA Privatekey.pemファイルからjava.security.PrivateKeyオブジェクトを取得する方法は?
- 13. リダイレクトビューからオブジェクトを取得する方法は?
- 14. フォームからオブジェクトの配列を取得する方法は?
- 15. オブジェクトから関数定義を取得する方法は?
- 16. PDOオブジェクトから接続リソースを取得する方法は?
- 17. pythonオブジェクトから値を取得する方法は?
- 18. propelオブジェクトコレクションから "id"でオブジェクトを取得する方法は?
- 19. Areablockのインデックスからオブジェクトを取得する方法は?
- 20. オブジェクトCで要素をxmlから取得する方法は?
- 21. jquery:日付オブジェクトからhh:mm:ssを取得する方法は?
- 22. Imageオブジェクトからbyte []データを取得する方法は?
- 23. Toastオブジェクトからテキストを取得する方法
- 24. .Min拡張メソッドからオブジェクトを取得する方法?
- 25. NSDictionaryオブジェクトのNSArrayから、ユニークなNSArrayを取得する方法
- 26. オブジェクトからブール値を取得する方法
- 27. NSUserdefaultsアレイから個々のオブジェクトを取得する方法
- 28. EFエンティティセットからオブジェクトの型を取得する方法
- 29. IE DOMから最新のIHTMLDocument2オブジェクトを取得する方法
- 30. DateTimeオブジェクトとGPS座標からTimezoneInfoを取得する方法
はい私はそれを行うことができます。 しかし、何百万人ものユーザーがいる大きなWebサイトのアプリケーションを作成しています。これらのID /セッションをマップに格納することは賢明ではありません。 私はコンテナ自体からセッションを取得する必要があります。コンテナは、セッションを格納する方法について詳しく知っています。 –
オブジェクトを格納すると、実際のオブジェクトを格納しないことを意味します。参照のみが格納されています。したがって、ストレージは最小限に抑えられます。 – Niger
私は理解します。しかし、コンテナがあまり頻繁に使用されないセッションをDB /ファイルシステムにシリアル化するとどうなりますか? WebLogicがどのようにこれらのセッションを処理するのか分かりません。 コンテナからセッションを直接取り出すことができない場合は、このソリューションを最後に使用します。 –