Session 如何为登录GRAILS(Spring security)的用户实现会话?

Session 如何为登录GRAILS(Spring security)的用户实现会话?,session,grails,spring-security,Session,Grails,Spring Security,如何为登录的用户实施会话 这是我已经实现的代码 def user=User.findByUserId(params.userId) if(user) { def sessionUser=user def sessionId=sessionUser.id constSessionUser=sessionUser constSessionId=sessionId .......... }

如何为登录的用户实施会话

这是我已经实现的代码

 def user=User.findByUserId(params.userId)
    if(user)
   {   
    def sessionUser=user
    def sessionId=sessionUser.id                       
    constSessionUser=sessionUser
    constSessionId=sessionId
  ..........
  } 
但是,如果我使用不同的用户名和密码登录,返回的params.userId仍然是前一个用户的,即使我使用session.invalidate()终止了它

由于iam使用Springsecurity,我只需传递用户名和密码,但创建的会话仍然是前一个用户或当前已注册的任何其他用户的会话

1) 如何为使用SPRING SECURITY登录的用户创建会话

   def user=User.findByUserName(params.username)
也导致了同样的问题

2) 如何终止会话,以便即使不同用户已登录,同一会话也不在进程中


plz非常感谢您的帮助……因为我是Grails的新手……

如果您使用的是Spring安全插件,您不需要使用会话或手动跟踪用户。需要时,您可以通过
SpringSecurityService
()访问用户详细信息,如:


你能把你的问题更新成更可读的格式吗?我的意思是将大写文本改为普通文本。
class MyController() {

  SpringSecurityService springSecurityService


  def me() {    
     render model: [user: springSecurityService.currentUser]
  }
}