import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.annotation.WebFilter; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; @WebFilter("/jsp/secret/*") public class AuthFilter implements Filter { private String redirectPage = "../LoginFailed.jsp"; @Override public void destroy() {} @Override public void doFilter(ServletRequest request0, ServletResponse response0, FilterChain chain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest)request0; HttpServletResponse response = (HttpServletResponse)response0; HttpSession session = request.getSession(false); if(session==null || (String)session.getAttribute("account")==null) { response.sendRedirect(response.encodeRedirectURL(redirectPage)); } else { request.setCharacterEncoding("UTF-8"); chain.doFilter(request, response); return; } } @Override public void init(FilterConfig fConfig) throws ServletException {} }