Block Filter : Filter « Servlets « Java






Block Filter

 
import java.io.IOException;
import java.io.PrintWriter;

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.http.HttpServletRequest;

public class BlockFilter implements Filter {

  private FilterConfig config;

  /** Creates new BlockFilter */
  public BlockFilter() {
  }

  public void init(FilterConfig filterConfig) throws ServletException {

    this.config = filterConfig;
  }

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

    HttpServletRequest req = null;
    boolean authenticated = false;
    PrintWriter out = null;

    if (request instanceof HttpServletRequest) {

      req = (HttpServletRequest) request;
      String user = req.getParameter("user");
      authenticated = authenticateUser(user);
    }

    if (authenticated) {
      chain.doFilter(request, response);
    } else {

      response.setContentType("text/html");
      out = response.getWriter();
      out
          .println("<html><head><title>Authentication Response</title></head><body>");
      out.println("<h2>Sorry your authentication attempt failed</h2>");

      out.println("</body></html>");
      out.close();

    }
  }// doFilter

  public void destroy() {
    /*
     * called before the Filter instance is removed from service by the web
     * container
     */
  }

  private boolean authenticateUser(String userName) {

    //authenticate the user using JNDI and a database, for instance
    return false;

  }
}

           
         
  








Related examples in the same category

1.Filtering page to UTF-8
2.Response Filter
3.Servlets Post Filter Demo
4.Servlets Logging Filter Demo
5.Another Filter Demo
6.Servlets CSV Filter Demo
7.Servlets SortFilter Demo
8.Filter Using Parameter
9.Jsp Using Chained Filter
10.Logging Filter
11.Restricting Filter
12.Filter that performs filtering based on comparing the appropriate request
13.JNDI Filter
14.Email JNDI Filter
15.Send filter
16.Log Filter
17.IP Filter
18.Checker Filter
19.Servlet : session filter
20.Parameter Filter
21.HTML filter utility
22.Compression Filter
23.Request Filter
24.Filter message string for characters that are sensitive in HTML
25.Filter that wraps an HttpServletRequest to override "isUserInRole".
26.Filter the specified message string for characters that are sensitive in HTML
27.Cache Filter