Java 发送响应后如何设置会话变量?

Java 发送响应后如何设置会话变量?,java,servlets,Java,Servlets,是否有办法在响应发出后设置会话变量 我希望避免任何筛选器在当前请求中看到此更改 为了澄清上下文,我将讨论用例 我的任务是使复杂的JavaEE应用程序(Spring、acegi、struts、JSP、ApacheTiles、aso)适应用户需求。 用户可以登录到此应用程序 如果第二次使用用户帐户,新会话应警告继续将使原始会话无效 出现警告后的任何请求(由于单击链接)都将使原始会话无效 一个问题是,当前设置的会话变量对其他(spring)筛选器可见。如果您有会话,则只能在服务器端保留变量。将其保存在

是否有办法在响应发出后设置会话变量

我希望避免任何筛选器在当前请求中看到此更改

为了澄清上下文,我将讨论用例

我的任务是使复杂的JavaEE应用程序(Spring、acegi、struts、JSP、ApacheTiles、aso)适应用户需求。 用户可以登录到此应用程序

如果第二次使用用户帐户,新会话应警告继续将使原始会话无效

出现警告后的任何请求(由于单击链接)都将使原始会话无效


一个问题是,当前设置的会话变量对其他(spring)筛选器可见。

如果您有会话,则只能在服务器端保留变量。将其保存在会话bean中是正常的过程。非常简单。

您可以创建过滤器链中的第一个过滤器。此筛选器将在请求后处理时最后调用。您可以在第二次调用筛选器时设置会话变量。

从筛选器?想要这样做的原因是什么?在某些情况下,我希望对下一个传入请求进行特殊处理,并且您有如此多的请求后处理过滤器,以至于您认为更改会话变量通常会导致问题?!我已经设置了一个会话变量。这还不够为什么?如果不了解你认为自己面临的问题,就很难提供有用的建议。