【发布时间】:2013-09-25 13:14:24
【问题描述】:
我有一个过滤器,我想过滤除一个让我进入登录页面的操作之外的所有操作。
如果我用某种条件过滤所有页面,那么即使是登录页面也会被过滤,因此它卡在无限循环中,因为条件不满足(用户未登录)。
session.getAttribute("CurrentEmployeeIds") 判断用户是否登录
我的过滤器在这里:
class LoginFilters {
def filters = {
all(controller:'dashboard', action:'*') {
before = {
if (session.getAttribute("CurrentEmployeeIds")==null) {
redirect(controller:"site",action:"index")
return false
}
}
after = { Map model ->
}
afterView = { Exception e ->
}
}
}
}
我想以不过滤 controller:"site",action:"index" 这个网址并过滤其他所有内容的方式进行过滤。
提前致谢。
【问题讨论】:
-
您可以通过
actionName和controllerName获取动作和控制器名称,只需检查一下,简单的if语句。您可以针对该特定操作返回true。 -
这与 Struts 2 有什么关系?