Web Application Archive

Van Wikipedia, de gratis encyclopedie

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.[1] Solche Dateien haben immer die Endung .war und werden daher umgangssprachlich auch „WAR-Datei“ genannt.

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.

/index.html /gaestebuch.jsp /images/logo.png /WEB-INF/web.xml /WEB-INF/classes/org/wikipedia/Util.class /WEB-INF/classes/org/wikipedia/MainServlet.class /WEB-INF/lib/util.jar /META-INF/MANIFEST.MF 

Der Inhalt kann auch extrahiert werden.

mkdir WARDateiName cd WARDateiName  jar -xvf /Pfad/zur/WARDateiName.war  created: WEB-INF/ created: WEB-INF/classes/ created: WEB-INF/classes/META-INF/ created: WEB-INF/classes/com/ ...... inflated: WEB-INF/classes/context.xml inflated: WEB-INF/classes/com/main/db.class ...... 
  • EAR (Datei Format)
  • JAR (Datei Format)

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. Servlet Specification, Version 2.4 jcp.org – 24. November 2003