过滤检查会话是否存在

时间:2012-01-05 09:19:10

标签: java servlets struts servlet-filters

我正在Struts中开发一个Web应用程序。我要求我必须检查用户是否存在会话。如果用户会话存在,则用户可以访问该资源,或者我需要在访问每个JSP页面之前检查会话变量是否存在。

为此,我使用过滤器检查会话变量是否存在。但是当我使用过滤器时,每个请求都被路由到该过滤器 - 甚至登录页面请求也被路由到过滤器。登录页面不需要应用过滤器检查,该怎么办?

1 个答案:

答案 0 :(得分:2)

这是典型的session filter用例。对于不要过滤的登录页面请求,您需要具有不同的登录页面URL,该URL将在过滤器的URL映射中排除。

OR

在过滤器本身中,您可以检查所请求的URL是什么,其登录页面然后不检查会话。但我会推荐早期的方法,因为它正确地解决了Separation of Concern哲学问题。