我在grails 2.4.4应用程序中使用spring-security-2.0。我在我的utils包中创建了以下groovy类。

package com.util.portal;

import com.services.portal.UserSessionService
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
import org.springframework.context.ApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;


public class CustomSessionControl implements HttpSessionListener {

	public void sessionCreated(HttpSessionEvent sessionEvent) {
		/* Do whatever we want */

	}

	public void sessionDestroyed(HttpSessionEvent sessionEvent) {
		/* Do whatever we want */
	}

}


我只想在sessionCreated()方法中使用springsecurityService
得到原理。

实际上,我的意图是在 session 创建时(通过sessionCreated方法)将所有用户详细信息设置到 session 中。

我怎样才能做到这一点?

最佳答案

您可以从springSecurityService检索Holders

在顶端:

import grails.util.Holders

在方法中:
def springSecurityService = Holders.applicationContext.springSecurityService
def user = springSecurityService.currentUser

关于spring - 如何在grails utils包中获取springSecurityService,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43043881/

10-10 11:26