私はSpring MVCを使ってWebアプリケーションを実装しました。 Webアプリケーションは、デスクトップユーザーインターフェイスを備えたシステムに統合されています。私はユーザーがdestkopのGUIからWebアプリケーションのセッションを閉じることを許可したいと思います。他のスレッドからhttpセッションを閉じる
非常に洗練されていないソリューションを実装しようとしました。httpsessionの無効化を呼び出しますが、実行中のHTTP要求内でセッションが無効になっているときに壊れることがあります。セッション属性にアクセスしようとしているためセッションがすでに無効であるため、レンダリング(特にWebUtil.getSessionAttribute)を呼び出そうとすると、DispatcherServletでIllegalStateExceptionがスローされます。
私の質問は、HTTPリクエストを実行しているときに競合することなく、非httpリクエストスレッドからセッションからユーザを蹴る方法がありますか?少なくとも、私が管理できる紛争。
おかげで、
ホルヘ
hmm JMX経由でセッション情報を取得できることがわかりました。 Apache Tomcat。アプリケーションサーバー/サーブレットコンテナはJMXコンソールで確認できます。セッションを終了する可能性がある場合は、JMX APIをプログラマチックに使用できます。 – fasseg
ありがとう@fas。私はJMX APIを見ていきます。とにかく、私はそれをWebアプリケーションサーバーとは別に使用したいと思います。だから誰も他のオプションを知っているかどうかを見てみましょう。 – Jorge