出于项目集群需要,使用Shiro管理WebSession,但是在用户登出功能使用session手动销毁后发现,SessionInViewInterceptor在获取Session的时候获取的是已经被Shrio停止的Session导致触发了Shiro的StoppedSessionException异常,最后导致项目直接到了500页面。对于这种问题目前有什么好的解决方法吗?
jfinal使用的版本是2.2。
项目:Shiro整合
出于项目集群需要,使用Shiro管理WebSession,但是在用户登出功能使用session手动销毁后发现,SessionInViewInterceptor在获取Session的时候获取的是已经被Shrio停止的Session导致触发了Shiro的StoppedSessionException异常,最后导致项目直接到了500页面。对于这种问题目前有什么好的解决方法吗?
jfinal使用的版本是2.2。
大致的改进方法是,在 SessionInViewInterceptor 中获取 session 后对其进行一下判断,如果 session 已经不可用了,或者说是被 Shrio 停止过的,则不使用它即可