由于Web程序開發中各種人員有不同分工,而Web程序的部署描述文件是程序構件提供者、程序組裝者和程序部署者之間的溝通機制;Servlet 2.4之前的版本規定了在Web服務器中使用DTD格式的web.xml,而Servlet 2.4將依照XML schema格式定義web.xml;實際上這兩種格式的web.xml只是在頭部有區別,其內容都是描述Web程序的部署信息。在web.xml中出現的部署元素主要包含以下信息:
ServletContext的初始化變量(Init Parameters);
交互會話(Session)的設置;
Servlet的聲明定義;
Servlet和網址URL的映射(Mapping);
應用程序生命周期的監聽器(Application Lifecycle Listener);
過濾器聲明;
過濾器和網址URL或Servlet/JSP的映射;
MIME類型;
歡迎文件(Welcome File);
錯誤網頁(Error Pages);
安全設置信息;
taglib配置;
JNDI對象(env-entry,ejb-ref,ejb-local-ref,resource-ref,resource-env-ref)。
在web.xml中具體標識為:
icon?,
display-name?,
description?,
distributable?,
context-param*,
filter*,
filter-mapping*,
listener*,
servlet*,
servlet-mapping*,
session-config?,
mime-mapping*,
welcome-file-list?,
error-page*,
taglib*,
resource-env-ref*,
resource-ref*,
security-constraint*,
login-config?,
sec..............
其中taglib配置與JNDI對象這兩項是支持J2EE的Web服務器必須要求的。對于不支持J2EE的servlet/JSP服務器,不需要這兩項;在web.xml中的元素需要按照規定的大小寫和順序出現。