Ein Deployment Descriptor (frei übersetzt „Einsatzbeschreibung“) ist eine Konfigurationsdatei im Format XML. Im Umfeld der Jakarta EE beschreibt diese Konfigurationsdatei den spezifischen Bereitstellungsprozess (englisch deployment) und dazu benötigte Informationen wie:
- Name, Klasse und Schnittstellen einer Jakarta Enterprise Bean (EJB)
- Informationen darüber, ob bestimmte Methoden unter bestimmten Arten von Transaktionen aufgerufen werden dürfen oder müssen
- Referenzen auf Ressourcen, die der Bean vom Container bereitgestellt werden müssen, z. B. Datenquellen
- Referenzen auf andere EJBs oder Webservices
- optional die Definition der Endpunkte von Webservices, die als die EJBs angeboten werden sollen
- für Entity Beans mit Container Managed Persistence der Name ihres abstrakten Schemas sowie die Definition ihrer persistenten Felder und Beziehungen untereinander; außerdem können Queries für bestimmte Suchmethoden (sogenannte Finders) definiert werden
Neben diesen standardisierten Eigenschaften definieren EJB-Container zusätzliche, containerspezifische Eigenschaften. Zum Zeitpunkt der Installation können diese Eigenschaften je nach Container auf unterschiedliche Art angegeben werden – in Java-Properties-Dateien, XML-Dateien oder interaktiv. Die Informationen können während der Bereitstellung oder zur Laufzeit ausgewertet werden.
In Java-Webanwendungen muss der Deployment Descriptor den Namen web.xml tragen und sich im Unterverzeichnis WEB-INF zum Wurzelverzeichnis der Webanwendung befinden. In Java-EE-Anwendungen muss der Deployment Descriptor den Namen application.xml tragen und sich im Unterverzeichnis META-INF des Enterprise Archives („EAR-Datei“) befinden.