web.xml file

The web.xml file provides configuration and deployment information for the web components that comprise a web application.

The Java Servlet specification defines the web.xml deployment descriptor file in terms of an XML schema document. For backwards compatibility, any web.xml file that is written to Servlet 2.2 or above that worked in previous versions of WebSphere® Application Server are supported by the web container.

If you use Rational® Application Developer Version 6 to create your portlets, you must remove the following reference to the std-portlet.tld from the web.xml file:
<taglib id="PortletTLD">
  <taglib-uri>http://java.sun.com/portlet</taglib-uri>
  <taglib-location>/WEB-INF/tld/std-portlet.tld</taglib-location>
</taglib>

Location

The web.xml file must reside in the WEB-INF directory under the context of the hierarchy of directories that exist for a web application.

For example, if the application is client.war, then the web.xml file is placed in the profile_root/installedApps/cellName/client.ear/client.war/WEB-INF directory (in a default installation), where the edition is either base or WebSphere Application Server, Network Deployment, depending on which edition you are using.

Usage notes

Sample file entry

Supported configurations Supported configurations: The web.xml file does not represent the entire configuration that is available for the web application. There are other servlets filters, and listeners that can be defined using programmatic configurations, annotations, and web fragments. sptcfg
Avoid trouble Avoid trouble: Marking the web application metadata complete will prevent annotations and web fragments from being able to configure components.gotcha
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="3.0" 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">
	<display-name>Servlet 3.0 application</display-name>
	<filter>
    <filter-name>ServletMappedDoFilter_Filter</filter-name>
    <filter-class>tests.Filter.DoFilter_Filter</filter-class>
    <init-param>
      <param-name>attribute</param-name>
      <param-value>tests.Filter.DoFilter_Filter.SERVLET_MAPPED</param-value>
    </init-param>
  </filter>
	<filter-mapping>
		<filter-name>ServletMappedDoFilter_Filter</filter-name>
		<url-pattern>/DoFilterTest</url-pattern>
		<dispatcher>REQUEST</dispatcher>
	</filter-mapping>
	<filter-mapping>
		<filter-name>ServletMappedDoFilter_Filter</filter-name>
		<url-pattern>/IncludedServlet</url-pattern>
		<dispatcher>INCLUDE</dispatcher>
	</filter-mapping>
	<filter-mapping>
		<filter-name>ServletMappedDoFilter_Filter</filter-name>
		<url-pattern>ForwardedServlet</url-pattern>
		<dispatcher>FORWARD</dispatcher>
	</filter-mapping>
	<listener>
		<listener-class>tests.ContextListener</listener-class>
	</listener>
	<listener>
		<listener-class>tests.ServletRequestListener.RequestListener</listener-class>
	</listener>
	<servlet>
		<servlet-name>welcome</servlet-name>
		<servlet-class>WelcomeServlet</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>ServletErrorPage</servlet-name>
		<servlet-class>tests.Error.ServletErrorPage</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>IncludedServlet</servlet-name>
		<servlet-class>tests.Filter.IncludedServlet</servlet-class>
	</servlet>
	<servlet>
		<servlet-name>ForwardedServlet</servlet-name>
		<servlet-class>tests.Filter.ForwardedServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>welcome</servlet-name>
		<url-pattern>/hello.welcome</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>ServletErrorPage</servlet-name>
		<url-pattern>/ServletErrorPage</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>IncludedServlet</servlet-name>
		<url-pattern>/IncludedServlet</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>ForwardedServlet</servlet-name>
		<url-pattern>/ForwardedServlet</url-pattern>
	</servlet-mapping>
	<welcome-file-list>
		<welcome-file>hello.welcome</welcome-file>
	</welcome-file-list>
	<error-page>
		<exception-type>java.lang.ArrayIndexOutOfBoundsException</exception-type>
		<location>/ServletErrorPage</location>
	</error-page>
  <error-page>
	  <error-code>404</error-code>
	  <location>/error404.html</location>
  <error-page>
</web-app>
Best practice Best practice: For each <error-page> declaration, select either <exception-type> or <error-code>, but not both. The <location> tag is required.bprac



Related concepts
Web applications
Web modules
Assembly tools
Related tasks
Viewing web services deployment descriptors in the administrative console
Viewing deployment descriptors
Related reference
Web applications: Resources for learning
Related information
Servlets
Reference topic Reference topic    

Terms of Use | Feedback

Last updatedLast updated: Sep 19, 2011 7:16:32 PM CDT
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=matt&product=was-express-iseries&topic=rweb_webxf
File name: rweb_webxf.html