J2EE defines 2 separate sources for deployment information. One is web.xml. One is container-dependent, and is usually, but not always an XML file. It's format and content is defined by the application server provider. You can find out details on this under the JSR-88 spec.
Tomcat's deployment descriptor is the <Context> element which can be defined in Tomcat's server.xml (
please don't), an XML file in Tomcat's conf/Catalina/localhost directory, or in the WAR as a file named context.xml. Container-supplied definitions will override context.xml.
ONLY Tomcat and product with embedded Tomcat (like
JBoss) use this context.xml file. Products such as IBM's WebSphere have their own deployment descriptor file names and formats.
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.