如何阻止firefox要求重新发送数据刷新?

时间:2015-04-16 19:37:33

标签: java firefox post

我已经在我的JSF应用程序中添加了一个登录名,当我在FireFox中测试它时,它会在刷新时重新发送表单数据。
我查看了this问题和链接,但我没看到发生了什么。

这是我的代码。

@Override
        public void doFilter(ServletRequest request, ServletResponse response, 
                FilterChain chain) throws IOException, ServletException {
            try {

                HttpServletRequest reqt = (HttpServletRequest) request;
                HttpServletResponse resp = (HttpServletResponse) response;
                HttpSession ses = reqt.getSession(false);

               String reqURI = reqt.getRequestURI();
               if (reqURI.indexOf("/login.xhtml") >= 0
                        || (ses != null && ses.getAttribute("username") != null)
                        || reqURI.indexOf("/public/") >= 0
                        || reqURI.contains("javax.faces.resource"))
                    chain.doFilter(request, response);
               else{
                    resp.sendRedirect(reqt.getContextPath() + "/faces/login.xhtml");
               }
            } catch (Exception e) {
                System.out.println(e.getMessage());
            }
}

1 个答案:

答案 0 :(得分:0)

登录成功后response.sendRedirect(request.getHeader("referer"))