And*_*sky 2 grails grails-plugin grails-2.0
我使用spring安全核心插件.我想在用户登录后立即将对象放入会话中.到目前为止我发现的是grails.plugin.springsecurity.LoginController插件中有.并且它具有ajaxSuccess被调用的方法,它似乎在成功认证之后被调用.所以我决定创建另一个扩展默认值的LoginController并覆盖此方法:
@Secured('permitAll')
class LoginController extends grails.plugin.springsecurity.LoginController {
def ajaxSuccess() {
session['somevproperty'] = someValue
super.ajaxSuccess()
}
}
Run Code Online (Sandbox Code Playgroud)
但调试表明从不调用此方法.出了什么问题?愿还有另一种方法可以做我想要的吗?谢谢!
Spring安全性拥有自己的事件监听器.我更喜欢你用它.
http://grails-plugins.github.io/grails-spring-security-core/guide/events.html
上面链接的示例代码,用于成功登录.
package com.foo.bar
import org.springframework.context.ApplicationListener
import org.springframework.security.authentication.event. AuthenticationSuccessEvent
class MySecurityEventListener implements ApplicationListener<AuthenticationSuccessEvent> {
void onApplicationEvent(AuthenticationSuccessEvent event) {
// handle the event
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
749 次 |
| 最近记录: |