Thursday 24 April 2014

Servlets : Filter Config Demo


Click here to watch in Youtube : https://www.youtube.com/watch?v=uiEBhrkRx3I

Click the below Image to Enlarge
Servlets : Filter Config Demo

FilterConfigDemo Project Dir Structure
Servlets : Filter Config Demo

MyFilter.java
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;

public class MyFilter implements Filter
{
 FilterConfig config;

 public void init(FilterConfig config) throws ServletException
 {
  System.out
          .println("------------------------------------------------------");
  System.out.println(" init method is called in "
          + this.getClass().getName());
  System.out
          .println("------------------------------------------------------");

  this.config = config;
 }

 public void doFilter(ServletRequest req, ServletResponse resp,
         FilterChain chain) throws IOException, ServletException
 {

  PrintWriter out = resp.getWriter();

  String filterName = config.getFilterName();

  System.out.println("Filter Name : " + filterName + "\n");

  String isConstruction = config.getInitParameter("construction");

  if (isConstruction.equals("yes"))
  {
   out.print("This page is under construction");
  }
  else
  {
   /** sends request to next resource */
   chain.doFilter(req, resp);
  }

 }

 public void destroy()
 {
  // add code to release any resource
  System.out
          .println("------------------------------------------------------");
  System.out.println(" destroy method is called in "
          + this.getClass().getName());
  System.out
          .println("------------------------------------------------------");
 }
}
HelloServlet.java
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HelloServlet extends HttpServlet
{
 private static final long serialVersionUID = 1L;

 public void init() throws ServletException
 {
  System.out
          .println("------------------------------------------------------");
  System.out.println(" Init method is called in "
          + this.getClass().getName());
  System.out
          .println("------------------------------------------------------");
 }

 public void doGet(HttpServletRequest request, HttpServletResponse response)
         throws ServletException, IOException
 {

  System.out.println(" doGet method is called in "
          + this.getClass().getName() + "\n\n");
  System.out
          .println("------------------------------------------------------");

  response.setContentType("text/html");
  PrintWriter out = response.getWriter();

  out.print("<br>welcome to helloservlet<br>");

 }

 public void destroy()
 {
  System.out
          .println("------------------------------------------------------");
  System.out.println(" destroy method is called in "
          + this.getClass().getName());
  System.out
          .println("------------------------------------------------------");
 }

}
web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns="http://java.sun.com/xml/ns/javaee"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
 metadata-complete="true" version="3.0">
 <display-name>FilterConfigDemo</display-name>
 <description>
        This is a simple web application with a source code organization
        based on the recommendations of the Application Developer's Guide.
    </description>
 <servlet>
  <servlet-name>HelloServlet</servlet-name>
  <servlet-class>HelloServlet</servlet-class>
 </servlet>
 <servlet-mapping>
  <servlet-name>HelloServlet</servlet-name>
  <url-pattern>/hello</url-pattern>
 </servlet-mapping>
 <filter>
  <filter-name>myfilter</filter-name>
  <filter-class>MyFilter</filter-class>
  <init-param>
   <param-name>construction</param-name>
   <param-value>yes</param-value>
  </init-param>
 </filter>
 <filter-mapping>
  <filter-name>myfilter</filter-name>
  <url-pattern>/hello</url-pattern>
 </filter-mapping>
</web-app>
index.html
<!DOCTYPE HTML><html lang="en"><head>
<meta charset="UTF-8">
<title>FilterConfigDemo</title>
</head>
<body>
<p>
<h3>FilterConfigDemo</H3>
<p></p>
<ul>
<li><a href="hello">FilterConfigDemo</a></li>

</ul>
</body></html>
Environment Used 

JDK version :1.6.0_30
Tomcat version : 7.0.50 

To Download FilterConfigDemoApp Project Click the below link

https://sites.google.com/site/javaee4321/servlets/FilterConfigDemoApp.zip?attredirects=0&d=1 

See also:

  • Servlets Tutorial
  • All Design Patterns Links
  • No comments:

    Post a Comment