web.xml deployment descriptor examples

web.xml in Eclipse

The web.xml is a configuration file to describe how a web application should be deployed. Here’re 5 web.xml examples, just for self-reference.

1. Servlet 3.1 deployment descriptor

Java EE 7 XML schema, namespace is http://xmlns.jcp.org/xml/ns/javaee/

web.xml

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
		 http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
</web-app>

2. Servlet 3.0 deployment descriptor

Java EE 6 XML schema, namespace is http://java.sun.com/xml/ns/javaee

web.xml

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
	      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	      http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	      version="3.0">
</web-app>

3. Servlet 2.5 deployment descriptor

Java EE 5 XML schema, namespace is http://java.sun.com/xml/ns/javaee

web.xml

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
	      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	      xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	      http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	      version="2.5">
</web-app>

4. Servlet 2.4 deployment descriptor

J2EE 1.4 XML schema, namespace is http://java.sun.com/xml/ns/j2ee

web.xml

<web-app 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"
	      version="2.4">

  <display-name>Servlet 2.4 Web Application</display-name>
</web-app>

5. Servlet 2.3 deployment descriptor

J2EE 1.3 DTDs schema. This web.xml file is too old, highly recommend you to upgrade it.

web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Servlet 2.3 Web Application</display-name>
</web-app>
Java Servlet important changes
Visit this Servlet wiki for the summary of important changes from Servlet 2.3 to 3.0

References

  1. Wikipedia – Deployment Descriptor
  2. Wikipedia – Java Servlet Wiki
  3. Oracle – web.xml documentation
  4. Oracle – XML Schemas for Java EE Deployment Descriptors
  5. Google App Engine web.xml for Java
  6. JSR-000315 JavaTM Servlet 3.0

About the Author

author image
mkyong
Founder of Mkyong.com, love Java and open source stuff. Follow him on Twitter, or befriend him on Facebook or Google Plus. If you like my tutorials, consider make a donation to these charities.

Comments

Leave a Reply

avatar
newest oldest most voted
pf_miles
Guest
pf_miles

Very useful infomation, thanks!

fsl4faisal
Guest
fsl4faisal

Thank you so much ..!!
You have one of the treasured site on the internet..!!

Julio
Guest
Julio

Thanks!

Binh Thanh Nguyen
Guest
Binh Thanh Nguyen

Thanks, very nice tips

Koray Tugay
Guest
Koray Tugay

Dude, these are all wrong..

KK
Guest
KK

web-app is repeated for 2.4, 2.5 and 3.0

trackback
Tomcat web.xml | Skills421
geoff perks
Guest
geoff perks

Thanks, just a note though, you’ve duplicated the web-app opening tags.

mkyong
Guest
mkyong

Thanks, article is updated.

john obiefuna
Guest
john obiefuna

How use my samsuny galaxy s2 to sms tex

john obiefuna
Guest
john obiefuna

How to use my phone to make sms