Copyright (c) 2009, 2021 Oracle and/or its affiliates. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v. 2.0, which is available at http://www.eclipse.org/legal/epl-2.0. This Source Code may also be made available under the following Secondary Licenses when the conditions for such availability set forth in the Eclipse Public License v. 2.0 are satisfied: GNU General Public License, version 2 with the GNU Classpath Exception, which is available at https://www.gnu.org/software/classpath/license.html. SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 ... The instance documents may indicate the published version of the schema using the xsi:schemaLocation attribute for Jakarta EE namespace with the following location: https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd ]]> The following conventions apply to all Jakarta EE deployment descriptor elements unless indicated otherwise. - In elements that specify a pathname to a file within the same JAR file, relative filenames (i.e., those not starting with "/") are considered relative to the root of the JAR file's namespace. Absolute filenames (i.e., those starting with "/") also specify names in the root of the JAR file's namespace. In general, relative names are preferred. The exception is .war files where absolute names are preferred for consistency with the Servlet API. The web-app element is the root of the deployment descriptor for a web application. Note that the sub-elements of this element can be in the arbitrary order. Because of that, the multiplicity of the elements of distributable, session-config, welcome-file-list, jsp-config, login-config, and locale-encoding-mapping-list was changed from "?" to "*" in this schema. However, the deployment descriptor instance file must not contain multiple elements of session-config, jsp-config, and login-config. When there are multiple elements of welcome-file-list or locale-encoding-mapping-list, the container must concatenate the element contents. The multiple occurence of the element distributable is redundant and the container treats that case exactly in the same way when there is only one distributable. The servlet element contains the name of a servlet. The name must be unique within the web application. The filter element contains the name of a filter. The name must be unique within the web application. The ejb-local-ref-name element contains the name of an enterprise bean reference. The enterprise bean reference is an entry in the web application's environment and is relative to the java:comp/env context. The name must be unique within the web application. It is recommended that name is prefixed with "ejb/". The ejb-ref-name element contains the name of an enterprise bean reference. The enterprise bean reference is an entry in the web application's environment and is relative to the java:comp/env context. The name must be unique within the web application. It is recommended that name is prefixed with "ejb/". The resource-env-ref-name element specifies the name of a resource environment reference; its value is the environment entry name used in the web application code. The name is a JNDI name relative to the java:comp/env context and must be unique within a web application. The message-destination-ref-name element specifies the name of a message destination reference; its value is the environment entry name used in the web application code. The name is a JNDI name relative to the java:comp/env context and must be unique within a web application. The res-ref-name element specifies the name of a resource manager connection factory reference. The name is a JNDI name relative to the java:comp/env context. The name must be unique within a web application. The env-entry-name element contains the name of a web application's environment entry. The name is a JNDI name relative to the java:comp/env context. The name must be unique within a web application. A role-name-key is specified to allow the references from the security-role-refs. The keyref indicates the references from security-role-ref to a specified role-name. When specified, this element provides a default context path of the web application. An empty value for this element must cause the web application to be deployed at the root for the container. Otherwise, the default context path must start with a "/" character but not end with a "/" character. Servlet containers may provide vendor specific configuration options that allows specifying a value that overrides the value specified here. When specified, this element provides a default request character encoding of the web application. When specified, this element provides a default response character encoding of the web application. When specified, this element causes uncovered http methods to be denied. For every url-pattern that is the target of a security-constrant, this element causes all HTTP methods that are NOT covered (by a security constraint) at the url-pattern to be denied. Please see section 8.2.2 of the specification for details.