Grails Spring安全核心预登出

时间:2011-08-03 15:20:36

标签: grails spring-security grails-plugin

我正在使用Grails Spring Security Core插件,我需要在发生注销时执行一些操作,例如删除与用户相关的一些类实例。我尝试了以下代码:

import org.codehaus.groovy.grails.plugins.springsecurity.SpringSecurityUtils
import grails.plugins.springsecurity.Secured

class LogoutController {

def index = {
    def currentUser = currentUser()
    currentUser.searchedResults.each{searched->
        def searchInstance = Search.get(searched.searchId)
        searchInstance.delete()
    }
    redirect uri: SpringSecurityUtils.securityConfig.logout.filterProcessesUrl // '/j_spring_security_logout'
}

private currentUser(){
    return User.get(springSecurityService.principal.id)
}
}

然而Grails给出了错误:没有这样的属性:类的用户:LogoutController 我的猜测是这种情况正在发生,因为当我安装Spring安全核心插件时,LogoutController和LoginController是在一个名为“default package”的不同包中创建的。有没有办法克服这个问题?任何帮助,将不胜感激!感谢

1 个答案:

答案 0 :(得分:1)

您只需导入User类。类似的东西:

import mypackage.User