2012-01-05 66 views
0

我正在Struts中開發一個Web應用程序。我有一個要求,我必須檢查用戶是否存在會話。如果用戶會話存在,那麼用戶可以訪問資源,或者我需要在訪問每個JSP頁面之前檢查會話變量的存在。用於檢查會話存在的過濾器

爲此我利用過濾器來檢查會話變量的存在。但是當我使用過濾器時,每個請求都被路由到該過濾器 - 即使登錄頁面請求被路由到過濾器。登錄頁面不需要應用過濾器檢查,該怎麼辦?

回答

2

這是典型的session filter用例。對於不需要過濾的登錄頁面請求,您需要爲登錄頁面提供一個不同的URL,該URL將被排除在過濾器的URL映射中。

OR

在過濾器本身,你可以檢查什麼是請求的URL,它的登錄頁面,然後不檢查會話。但我會推薦以前的方法,因爲它正確地處理了Separation of Concern哲學。