将SpringSecurityService注入Grails中的Filter时为空

时间:2012-12-03 14:14:36

标签: grails

我正在尝试在过滤器中使用SpringSecurityService来获取当前登录的用户。问题是我得到了null并且无法获得当前用户。

class ApplicationFilters {

   def springSecurityService

   def filters = {
      all(controller:'*', action:'*') {

         after = { Map model ->

            def userName=springSecurityService.currentUser
         }
      }
   }
}

我还尝试从过滤器获取params地图,我也得到了null。我该怎么做才能解决这个问题?

谢谢,

1 个答案:

答案 0 :(得分:0)

不知道你是否已经解决了这个问题,但你可以通过参考这样注入的Service来调用*Filters课程中的applicationContext

class TestFilters {
  def filters = {
    all(controller:'*', action:'*') {
        before = {
            applicationContext.testService.serviceMethod()
        }
        after = { Map model ->

        }
        afterView = { Exception e ->

        }
    }
  }
}