0

我正在使用不在框架中的登录页面,但是一旦我登录,所有页面都在框架中,当我尝试注销时,(the logout link is there in the frame)仅重新加载特定框架并且登录页面进入该框架。但我希望登录页面显示在不应该显示页面的地方。

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

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);
        }
    }

这该怎么做 ,

请帮忙

4

1 回答 1

1

可以试试吗:

    request.getSession().invalidate();

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

如果您的会话无效,您可以做很多事情。前任。将用户转发到另一个页面。或者像这样用javascript刷新你的框架。

            window.parent.MY_FRAME_NAME.location.reload();

祝你好运;

于 2012-10-19T07:07:03.183 回答