分布式WAS7环境中的HttpSession完整性损坏

时间:2014-08-29 13:40:05

标签: session java-ee websphere websphere-7

该项目使用JSF2.1和primefaces4在带有负载平衡环境的WAS7上运行。验证过滤后,userinfo将其置于会话中。在查看页面时,后端bean使用facescontext从会话中获取用户信息,如下所示,bean范围是viewscoped

        FacesContext context = FacesContext.getCurrentInstance();

        HttpServletRequest request = (HttpServletRequest) context
                .getExternalContext().getRequest();

        HttpSession session = request.getSession(false);

        UserInfo userInfo= null;

        if(session != null) {
            userInfo= (UserProfile) session
                    .getAttribute("UserInfo");

           // do some logic
        }

按预期工作正常。当更多号码用户(同时)访问页面或同时在页面中进行相同的操作时,有时会话给出错误的对象,即其他用户信息对象不是我的。根据用户信息,所有业务逻辑都将被执行,因此页面显示错误的信息。

知道为什么会发生这种情况,以及防止这种情况发生的解决方案吗?

0 个答案:

没有答案