war file : Java Glossary

war file
WAR (Web Archive). Files with the extension *.war. You use it to deploy Servlets, including EE (Enterprise Edition) and JSP (Java Server Pages). War files are type of jar file used by Servlets. They contain various kinds of source and images e.g. *.java, *.jsp, *.xml, *.css, *.ejb, *.gif, *.html, *.png, *.sql, *.xsl, *.xtp.

Normally they contain no *.class files, but it is possible to precompile your JSP s, in which case they behave like Servlets. files.

The magic of *.war files is their completeness. All you need do is drop the *.war file in the run directory of any Servlet womb, and that is all it needs to run the application. The womb can find out everything it needs to know primarily by examining the web.xml enclosed file. This works across platforms and across vendors. Sun nailed down the specifications of the *.war file in a platform-independent way. Its a bloody miracle, and something Sun deserves kudos for.

Example

Here is as simple hello world app bundled as a single hello.war file.
Contents of hello.war
file purpose
META-INF/MANIFEST.MF Ordinary unsigned jar manifest
WEB-INF/classes/li/earth/urchin/twic/HelloServlet.class compiled Servlet class file
WEB-INF/web.xml XML (extensible Markup Language) file linking hello command with corresponding hello Servlet.
index.html HTML (Hypertext Markup Language) to display to client to let him invoke the Servlet
Contents of hello.zip
file purpose
hello-war/build.sh Linux bash build script to rebuild hello.war. You might do it with ANT or with your IDE (Integrated Development Environment).
hello-war/src/li/earth/urchin/twic/HelloServlet.java Java source for Servlet
hello-war/web.xml XML file linking hello command with corresponding hello Servlet.
Here is what the web.xml file

Learning More


CMP homejump to top

available on the web at:

http://mindprod.com/jgloss/warfile.html
  

optional Replicator mirror
of mindprod.com
on local hard disk J:

J:\mindprod\jgloss\warfile.html
logo
Please email your , letters to the editor, errors, omissions, typos, formatting errors, ambiguities, unclear wording, broken/redirected link reports, suggestions to improve this page or comments to Roedy Green : feedback email. If you want your message, your name or email kept confidential, not considered for public posting, please explicitly specify that. Unless you state otherwise, I will treat your message as a letter to the editor that I may or may not publish in the feedback section. After that, it will be too late to retract it. If you disagree with something I said, especially when sending an ad-hominem attack, a rant composed mainly of obscenities or a death threat, please quote the offending passage and cite the web page where you found it, tell me why you think it is wrong, and, if possible, provide some supporting evidence. I can’t very well fix erroneous or ambiguous text if I can’t find it.
Blog
IP:[65.110.21.43]
Your face IP:[50.16.166.175]
You are visitor number 59,330.