WAR (typ souboru)

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 22. března 2015; kontroly vyžadují 12 úprav .
Webový archiv
Rozšíření .war
MIME typ aplikace/java-archive
Vývojář Sun Microsystems
Typ formátu formát souboru
Obsahuje JSP , Java servlety
Rozšířeno z ZIP

Web Archive nebo Web Application Resource [1]  je formát souboru, který popisuje, jak je kompletní webová aplikace zabalena podle specifikace servletu Java do souboru JAR nebo ZIP . [2] Tyto soubory mají příponu „ .war“, a proto se také nazývají „soubory WAR“.

Výhody souborů WAR:

Struktura

Následující příklad ukazuje strukturu webového archivu .

/index.html /kniha hostů.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

Všimněte si, že WEB-INFadresář " " obsahuje takzvaný Deployment Descriptor s názvem " web.xml", který definuje všechny servlety a další vlastnosti webové aplikace. Pokud aplikace obsahuje pouze soubory JSP, není tento soubor striktně vyžadován.

Příklad deskriptoru nasazení web.xml demonstrující specifikaci servletu :

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java. sun.com/j2ee/dtds/web-app_2_2.dtd"> <web-app> <servlet> <servlet-name> HelloServlet </servlet-name> <servlet-class> mypackage.HelloServlet </servlet-class> </servlet> <servlet-mapping> <servlet-name> HelloServlet </servlet-name> <url-pattern> /HelloServlet </url-pattern> </servlet-mapping> <resource-ref> <description> Odkaz na zdroj továrny pro javax.mail.Session instance, které mohou být použity pro zasílání zpráv elektronické pošty, předem nakonfigurované pro připojení k příslušnému serveru SMTP. </description> <res-ref-name> mail/Session </res-ref-name> <res-type> javax.mail.Session </res-type> <res-auth> Kontejner </res-auth> </resource-ref> </web-app>

Adresář /WEB-INF/classes je v cestě třídy ClassLoader . Tyto java soubory .class budou načteny při načtení a spuštění webové aplikace. Všechny soubory JAR nalezené v adresáři /WEB-INF/lib budou také umístěny do cesty třídy .

Tvorba

Můžete vytvořit archiv WAR:

  • packer součástí sady J2EE SDK .
  • Spuštěním úlohy „válka“ v Apache Ant .
  • Spuštěním příkazu "mvn clean install" v Apache Maven .
  • Nástroj JAR je součástí J2SE . Musíte pouze zajistit, aby adresářová struktura vaší aplikace odpovídala požadovanému formátu WAR. Stačí spustit následující příkaz v kořenovém adresáři vaší aplikace:
jar cvf název_archivu.war .

Aplikace

Všechny kontejnery J2EE podporují soubory WAR.

Aby webový kontejner ( webový server ) mohl přečíst deskriptor nasazení a začít přesměrovávat požadavky do této aplikace, musíte do kontejneru nasadit (nasadit) soubor WAR. Jednou z možností nasazení je zkopírovat soubor WAR do adresáře autodeploy webového kontejneru.

WAR lze digitálně podepsat stejným způsobem jako soubor JAR pro ověření pravosti kódu.

Aplikace nainstalované ze souborů WAR na stejném serveru nemohou vzájemně využívat své prostředky, jejich spouštění je izolované. Mohou však používat sdílené serverové knihovny (například Tomcat je má v ${catalina.base}/lib), ale takové knihovny nelze nainstalovat pomocí souboru war.

Poznámky

  1. Apache Tomcat 9 - Nasazení webové aplikace Tomcat . Staženo 2. června 2019. Archivováno z originálu 2. června 2019.
  2. Danny Coward, Yutaka Yoshida: Specifikace Java™ Servlet, verze 2.4. Archivováno z originálu 7. ledna 2010. 24. listopadu 2003

Viz také