我试图在 Spring 的sessiondestroyedevent上运行一些代码。但是无论我是注销还是等待会话超时,我的侦听器都不会接收此事件。通过查看stackoverflow,我发现这个问题并不少见,而且通常很容易解决,但我尝试了许多不同的解决方案,但都没有奏效。我确实看到在应用程序启动时创建bean。根据文件,我认为我需要的只是以下听众:
@Component
public class LogoutListener {
@EventListener
void handleSessionDestroyedEvent(SessionDestroyedEvent event){
log.debug("handling destroyed event");
}
}
我已经在applicationconfig中添加了以下内容,尽管我不确定这是否必要。
@Configuration
public class ApplicationConfig {
@Bean
public ServletListenerRegistrationBean<HttpSessionEventPublisher> httpSessionEventPublisher() {
return new ServletListenerRegistrationBean<HttpSessionEventPublisher>(new HttpSessionEventPublisher());
}
}
暂无答案!
目前还没有任何答案,快来回答吧!