Kai*_*Kai 9 session spring web-applications
我有一个网络应用程序,web.xml我在其中添加了HttpSessionEventPublisher作为监听器.Web应用程序在Jetty 7.x上运行,我们使用的是Spring 3.1.1.
这应该是触发HttpSessionCreatedEvent和HttpSessionDestroyedEventSpring上下文事件监听器.
我有一个@Controller实现的Bean()ApplicationListener<ApplicationEvent>.ApplicationEvent是共同的父类的HttpSessionCreatedEvent和HttpSessionDestroyedEvent.当我现在登录到我的Web应用程序或从中退出时,我希望将这些事件触发到该onApplicationEvent(ApplicationEvent event)方法.我收到了一些其他事件,比如一些请求处理事件,但预期的事件没有显示出来.我已经跟踪了一下应用程序,HttpSessionEventPublisher肯定会将事件触发到上下文,但是没有接近监听器.我在这里想念什么?
问题是HttpSessionEventPublisher根据javadoc在"Spring Root WebApplicationContext"上发布事件,这是通过ContextLoaderListenerweb.xml文件中的条目注册的应用程序上下文.另一方面,你的@Controller可能是通过不同的应用程序上下文注册的 - 通过DispatcherServlet注册的应用程序上下文.所以我建议您创建一个不同的ApplicationListener,将其注册到Root WebapplicationContext,然后事件应该通过.
| 归档时间: |
|
| 查看次数: |
4601 次 |
| 最近记录: |