【发布时间】:2015-04-20 09:07:49
【问题描述】:
几天来,我一直在尝试解决 Magnolia 和 Spring 会话 bean 的问题,但经过几个小时后,我没有更多的想法可能出了什么问题。
我正在开发基于 Magnolia 5.2.4 的简单应用程序,该应用程序在 tomcat 7.0.5 上工作。我也将 Blossome 与 Spring MVC 一起使用
我遇到的问题只出现在匿名用户的 Public 上,它是关于会话 Bean,我用它来保存所有记录的使用数据 - 是的,我没有使用 spring 安全性来避免让事情变得更复杂。所以我有我的会话范围 bean,它存储例如记录的用户数据。我正在从 jsp 页面等的 bean 中检索它。
当我在用户登录后键入 www.my_doman.com/appName(会话 bean 填充了用户数据)时,似乎我得到了一些新的会话 bean,因为用户数据为空(= null )。当我执行一些操作,例如 www.my_doman.com/appName/action.html 甚至 www.my_doman.com/appName// 时,正确的控制器被触发,我得到了正确的会话 bean,其中包含我刚刚填写的用户数据他已登录。而且 www.my_doman.com/appName 的行为不像 www.my_doman.com/appName**/**
当我注销时,清理存储在 sessionBean (sessionBean.setUserData(null); ) 中的用户数据并使会话无效 (request.getSession().invalidate) 有时我会得到“旧”用户数据.即使在其他计算机上,我也可以拦截在其他计算机上登录的用户。 所以-我正在单击“注销”并且控制器和 jsp 没有找到任何用户数据(什么是正确的)但是当我将操作更改为 www.my_doman.com/appName/ 时,旧会话 bean 会以注销的用户返回数据。在超级用户的作者上它工作得很好......
有人知道出了什么问题吗?我正在尝试使用匿名用户 magnolia 权限,但这不是我想的那样。
最好的问候 一月
【问题讨论】:
标签: spring spring-mvc invalidation magnolia session-bean