2012-01-05 62 views
0

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

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

回答

2

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

OR

在过滤器本身,你可以检查什么是请求的URL,它的登录页面,然后不检查会话。但我会推荐以前的方法,因为它正确地处理了Separation of Concern哲学。