在以前的应用程序中,我们能够从控制器访问session.user.PROPERTY
,为了安全起见,我们使用了注释。在一个新的应用程序中,我们决定使用RequestMap
来存储规则。在控制器中检查用户域类的值时,我们会得到一个NullPointerException
错误,指出session.user
是一个null对象。
在以前的应用程序中,访问session.user.WHATEVER
并直接从会话访问用户信息是方便的,而不必使用principal.id
查询用户信息。
如果您试图检索当前登录的用户,最简单的方法是使用springSecurityService
bean,例如
class MyController {
def springSecurityService
def myAction() {
def currentUser = springSecurityService.currentUser
}
}