Web Application Archive
# Web Application Archive

Web Application Archive (WAR file; gelegentlich auch Web Archive) ist ein Dateiformat, das beschreibt, wie eine vollständige Webanwendung nach der Java-Servlet-Spezifikation in eine Datei im JAR- bzw. ZIP-Format verpackt wird. Solche Dateien haben immer die Endung .war und werden daher umgangssprachlich auch „WAR-Datei“ genannt.

## Struktur

Für Webanwendungen nach der Servlet-Spezifikation ist eine bestimmte Verzeichnisstruktur vorgeschrieben, die sich auch in den WAR-Dateien wiederfindet.

Neben der für alle JAR-Dateien vorgeschriebenen Datei META-INF/MANIFEST.MF enthält jede WAR-Datei ein Verzeichnis WEB-INF, in dem sich ein sogenannter Deployment Descriptor (frei übersetzt als „Einsatzbeschreibung“) namens web.xml befindet, der alle Servlets und andere Eigenschaften der Webanwendung definiert. Kompilierte Java-Klassen sind in einem Unterverzeichnis namens WEB-INF/classes enthalten und benötigte Hilfsbibliotheken in WEB-INF/lib. Alle Dateien, die sich nicht im WEB-INF-Verzeichnis befinden, werden als statischer Inhalt der Webanwendung interpretiert, z. B. HTML-Seiten, aber auch JavaServer Pages.

Das folgende Beispiel zeigt eine typische Struktur eines fiktiven, sehr einfachen Web Archives.

Der Inhalt kann auch extrahiert werden.

