全部。 我查看了网页,但没有找到适合我的解决方案。
我需要在会话被销毁之前从HttpSessionListener
中的globalsession范围内的bean访问信息。
在检查会话属性后,我找到了一个解决方案,但看起来并不顺利:
MyBean myBean = httpSessionEvent.getSession().getAttribute("scopedTarget."+"myBeanImlp");
我也有单例bean,通过目标+代理包含会话bean,但是通过sessionDestroyed
在ctx.getBean("mySingletonBean")
中获取它们,会话bean的引用在它们内部是无效的(会话bean在{之前已被销毁} {1}}致电)
有没有人知道这个问题的正确解决方案?
我认为我们需要像sessionDestroyed
这样的东西,但对于会话bean,我可以查看bean,准备好销毁并采取我需要的行动。
答案 0 :(得分:0)
您可以尝试将会话侦听器定义为组件并注入ApplicationContext(或必需的bean),然后访问它。您可以查看How to inject dependencies into HttpSessionListener, using Spring?