我有一个具有以下设置的项目:
Tomcat 6.x
Struts 2.1.6
DisplayTag 1.2
Spring 2.x (1 or 5, don't remember now)
我想知道在我的应用程序的每个操作中进行会话控制,比如如果用户没有登录,他们会被重定向到某个页面进行登录(在我的项目中,要么用户来到一个特殊的精心制作的 url,如 login/SPECIALHASHTOLOGIN 或根本不会输入。
需要更多细节?
提前谢谢。
我也是 S2 的新手,但我相信您需要做的是修改默认拦截器堆栈(或创建自定义堆栈)并添加自定义拦截器。此自定义拦截器将需要实现SessionAware以访问用户会话,并且必须实现您的自定义逻辑(重定向到哪个操作,哪些 URL 不需要保护等)。
这是一个很好的LoginInterceptor教程,其行为类似于您所请求的。
如果您已经在使用 Spring,Acegi 安全性是为您的 Web 应用程序添加安全性的好方法。这是一个不错的 1 小时 Acegi 教程。