WAR (파일 포맷)

WAR()은 웹 애플리케이션을 배포하기 위해 설계된 특수한 JAR 파일(.war 확장자)이다. 소프트웨어 공학에서 웹 애플리케이션(서블릿, 자바 클래스, JSP, HTML, CSS, JS, XML, 태그 라이브러리 및 기타 자원 등)을 하나의 파일로 패키징해 웹 서버에 배포하는 압축 파일 형식이다. 톰캣, 제티같은 웹 서버나 서블릿 컨테이너에서 실행할 수 있다.

 예 
다음의 견본 web.xml 파일은 서블릿의 선언 및 연결을 증명하고 있다:

  <?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>
             Resource reference to a factory for javax.mail.Session
             instances that may be used for sending electronic mail messages,
             preconfigured to connect to the appropriate 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>


/WEB-INF/classes 디렉터리는 클래스로더의 클래스패스(classpath) 위에 존재한다. 이 장소가 .class 파일들이 웹 애플리케이션 실행 시 호출되는 장소이다.

/WEB-INF/lib 디렉터리에 위치한 JAR 파일들은 클래스로더의 클래스패스에 존재할 수 있다.

 같이 보기 
 EAR
 JAR
 EXE

 각주 

 외부 링크 
 Oracle Java EE 7 Tutorial: Packaging Web Archives
 Oracle Java EE 6 Tutorial: Web Modules
 Oracle Java EE 5 Tutorial: Web Modules
 Sun Microsystems: XML Schema for the Servlet 2.5 Web ARchive (WAR) File
 Sun Microsystems: XML Schema for the Servlet 2.4 Web ARchive (WAR) File
 JSR 154: Java Servlet 2.4 Specification

분류:아카이브 포맷
분류:자바 플랫폼, 엔터프라이즈 에디션