如何重新加载框架和会话值不会被删除

时间:2012-10-19 07:01:20

标签: java frameset httpsession

我使用的登录页面不是框架,但是一旦我登录所有页面都在framset中,当我尝试注销(the logout link is there in the frame)时,只重新加载该特定框架并且登录页面到达帧。但我希望显示登录页面,不显示任何页面。

我删除这样的会话值,但是当我刷新页面时,所有的valuse都在框架中的页面中。

public void sessionRemove(HttpServletRequest request,HttpServletResponse response){
        request.getSession(true).removeAttribute("userDetails");

        /**
         * Remove the Session Object.
         */
        Enumeration enumSessionObj = request.getSession(false).getAttributeNames();
        while(enumSessionObj.hasMoreElements()){
            String enumObj = enumSessionObj.nextElement().toString();
            request.getSession(false).removeAttribute(enumObj);
        }

        /**
         * Remove the Cookies.
         */
        Cookie[] cookies = request.getCookies();
        for (int i = 0; i < cookies.length; i++) {
            Cookie delCookie = cookies[i];
            delCookie.setMaxAge(0);
        }
    }

如何做到这一点,

请帮忙

1 个答案:

答案 0 :(得分:1)

你能试试吗?:

    request.getSession().invalidate();

你可以在其中一个帧中打印时间吗?我认为你的问题可能与缓存有关。

如果会话无效,您可以执行许多操作。防爆。将用户转到另一个页面。或者使用javascript刷新你的框架。

            window.parent.MY_FRAME_NAME.location.reload();
祝你好运;