Deployment Descriptor

In a java web application(Servlet application) a file named web.xml is known as deployment descriptor file. It is a xml file which describes the deployment details about a servlet and <web-app> is the root element for it. When a request comes, web server uses web.xml file to map the URL of the request to the specific code that handle the request.
Sample code of web.xml file:

 

<web-app>

        <servlet>
               <servlet-name>servletName</servlet-name>
               <servlet-class>servletClass</servlet-class>
        </servlet>

        <servlet-mapping>
               <servlet-name>servletName</servlet-name>
               <url-pattern>*.*</url-pattern>
        </servlet-mapping>

</web-app>

 

How web.xml works

When a request comes it is matched with url pattern in servlet mapping attribute. In the above example all urls mapped with the servlet. You can specify a url pattern according to your need. When url matched with url pattern web server try to find the servlet name in servlet attributes same as in servlet mapping attribute. When match found control is goes to the associated servlet class.

Servlet example by extending HttpServlet class.
 

HelloWorld.java

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class HelloWorld extends HttpServlet {
        protected void doGet(HttpServletRequest request, HttpServletResponse 
             response) throws ServletException, IOException {         response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        out.println("<h1>JAVA means SILAN TECHNOLOGY</h1>");
        out.close();
    }
}

 

 

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" 
xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">         <servlet>
               <servlet-name>abc</servlet-name>
               <servlet-class>java8s.HelloWorld</servlet-class>
        </servlet>         <servlet-mapping>
               <servlet-name>abc</servlet-name>
               <url-pattern>/HelloWorld</url-pattern>
        </servlet-mapping>

</web-app>

Our Services:

Java Training | Python Training | Machine Learning with Python Training | Deep Learning with Python Training | Projects

SILAN Technology
Call to: 9439202111  |  9658317757  |  0674-2361252

Comment