Grails 2.1.1和spring安全消息



有人遇到登录失败的错误消息没有出现吗?

我正在将一个grails 1.3.7应用程序升级到grails 2.1.1,我在spring安全核心功能方面有两个问题。

首先,如果我尝试一个无效的登录,验证失败,但没有错误消息,只是在flash消息{}。

其次,我使用这样的方法来获取当前活动会话的计数。它不再是准确的,因为它只是增加,而不识别注销。

def getCurrentSessionCount(){
    def sessioncount = 0
    sessionRegistry.getAllPrincipals().each{
        sessioncount += sessionRegistry.getAllSessions(it, false).size()
    }
    return sessioncount;
}

这是LoginController的不同之处错误信息是如何填充的。在1.3.7和以前的安全插件中,代码如下:

msg = SpringSecurityUtils.securityConfig.errors.login.expired

,但是对于2.1.1和升级的spring安全插件1.2.7.3,代码需要使用如下上下文:

msg = g.message(code: "springSecurity.errors.login.disabled")

会话计数与您需要对web.xml进行修改以添加会话侦听器有关,但是在新的spring 3.0中,它被移动了,因此新条目应该看起来像:

<listener>
    <listener-class>org.springframework.security.web.session.HttpSessionEventPublisher</listener-class>
</listener> 

相关内容

  • 没有找到相关文章

最新更新