Webbarkiv | |
---|---|
Förlängning | .war |
MIME -typ | applikation/java-arkiv |
Utvecklaren | Sun Microsystems |
Formattyp | filformat |
Innehåller | JSP , Java-servlets |
Utökad från | blixtlås |
Web Archive eller Web Application Resource [1] är ett filformat som beskriver hur en komplett webbapplikation paketeras enligt Java-servletspecifikationen till en JAR- eller ZIP -fil . [2] Dessa filer har tillägget " .war" och kallas därför även "WAR-filer".
Fördelar med WAR-filer:
Följande exempel visar strukturen för webbarkivet .
/index.html /gästbok.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.MFObservera att WEB-INFkatalogen " " innehåller en så kallad Deployment Descriptor som heter " web.xml", som definierar alla servlets och andra egenskaper för webbapplikationen. Om applikationen endast innehåller JSP-filer är den här filen absolut inte obligatorisk.
Ett exempel på en web.xml- distributionsbeskrivning som visar servletspecifikationen :
<?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> <resurs-ref> <beskrivning> Resursreferens till en fabrik för javax.mail.Session instanser som kan användas för att skicka e-postmeddelanden, förkonfigurerad för att ansluta till lämplig SMTP-server. </description> <res-ref-name> mail/session </res-ref-name> <res-type> javax.mail.Session </res-type> <res-auth> Container </res-auth> </resource-ref> </web-app>Katalogen /WEB-INF/classes finns i klasssökvägen för ClassLoader . Dessa .class java-filer kommer att laddas när webbapplikationen laddas och börjar köras. Alla JAR-filer som hittas i katalogen /WEB-INF/lib kommer också att placeras på klasssökvägen .
Du kan skapa ett WAR-arkiv:
Alla J2EE-behållare stöder WAR-filer.
För att webbbehållaren ( webbservern ) ska kunna läsa distributionsbeskrivningen och börja omdirigera förfrågningar till denna applikation, måste du distribuera (distribuera) WAR-filen i behållaren. Ett alternativ för att distribuera är att kopiera WAR-filen till webbbehållarens autodeploy-katalog.
En WAR kan signeras digitalt på samma sätt som en JAR-fil för att verifiera kodens autenticitet.
Applikationer installerade från WAR-filer på samma server kan inte använda varandras resurser, deras exekvering är isolerad. Däremot kan de använda delade serverbibliotek (till exempel Tomcat har dem i ${catalina.base}/lib), men sådana bibliotek kan inte installeras med hjälp av war-filen.