質問: お世話になります。 Webアプリで原因がわからない現象が発生しているので、アドバイスをお願いいたします。 Tomcat5.5でログイン、ログアウトする処理のあるWebアプリを開発しております。 ログイン時、あるMapを作成し、ServletContext.setAttribute("name", map)という風に、そのMapをApplicationスコープの変数に設定しております。 そのMapの内容はJSPに表示して利用します。 そして、ログアウト時にServletContext.setAttribute("name", null)という風にApplicationスコープ変数を削除しております。 ところが、次回ログイン時にMapの内容を変えて、ServletContext.setAttribute("name", map)を行ったはずなのに、Mapの同じキーで取得できる値が、前回のもののままになってしまっており、変更が反映されません。 ブラウザのキャッシュを削除しても反映されず、 Tomcatを再起動すると変更が反映されます。 この現象について、原因、もしくは、原因の推測がある方、アドバイスいただけると幸いです。 よろしくお願いいたします。
回答: そういう状態になったことはないけど。 試しにworkディレクトリを消してみたら?