현재 내가 작업하고 있는 Web Project는 War 파일로 배포된다. 그러나!! 난 War 파일에 대하여 '그냥 압축 파일' 정도밖에 알지 못하였다.
오늘 다른 작업을 하던 중, WAR파일에 대하여 궁금한 점이 생겨서 하나하나 찾아 보기로 하였다.
우선 제일 먼저 들어간 곳은 Wikipedia:WAR (Sun file format) 이다.
이곳에서 내가 WAR 파일에 대하여 알아낸 점은,
- WAR파일은 JAR파일이다.ㅋ
- JAR파일과 같이 digitally signed 이다.
- "Web Application Archive" 의 줄임말이다.
- 다음의 내용들을 포함하고 있다.
- JSP, Servlets, Java Classes, XML fiels, tag libraries and Static Web Pages
- 특별한 파일 구조는..
- /WEB-INF
- web.xml 파일이 포함되어 있음.
- 단순히 JSP파일만 제공되어진다면 web.xml파일은 꼭 필요한 것은 아님.
- /WEB-INF/classes
- ClassLoader의 Classpath에 포함되는 부분.
- /WEB-INF/lib
- 이곳에 포함되어 있는 jar파일도 Classpath에 포함되어 진다.
- 단점은 소소한 변화에도 전체 WAR파일을 다 재 설치 해야 한다.
그리고 내가 테스트 삼아 배포해본 결과.
service.war 파일을 배포하면
192.168.x.x:8080/service/ 안으로 압축 파일이 고대로 풀린다는 사실.