Project

General

Profile

ModjyWarPackaging » History » Version 4

Alan Kennedy, 2011-02-25 09:09 PM
Corrected some speling and gramer mistakes.

1 1 Alan Kennedy
h1. Modjy WAR packaging
2
3
h2. Why WAR deployment.
4
5
When you deploy WSGI web applications in a java servlet container, such as "Apache Tomcat":http://tomcat.apache.org or "Glassfish":https://glassfish.dev.java.net/ , there are two different ways you can deploy
6
7 3 Alan Kennedy
 # You deploy your application using a particular directory structure. This directory structure is described in detail on the [[ModjyDeployment|modjy deployment]] page.
8 1 Alan Kennedy
 # You can deploy your application as a single file. This file is a "WAR file":http://en.wikipedia.org/wiki/WAR_file , and actually is an archive of the same directory structure described above.
9
10
So, if your application is working correctly when deployed as a directory structure, then building a WAR file is a very simple extra step.
11
12
h2. How to build a WAR file.
13
14
First, build the directory structure of your application. If you're not certain how to build this structure, a simple way forward is to take the demo *modjy_webapp* directory from the jython distribution, and tweak that structure to meet your needs.
15
16 3 Alan Kennedy
When you're happy with the contents of the directory hierarchy, execute a command like this, in the top level of your web applications directory hierarchy, e.g. the *modjy_webapp* directory.
17 1 Alan Kennedy
18
<pre>
19
$JAVA_HOME/bin/jar cvf WARNAME.war .
20
</pre>
21
22
Where WARNAME is the name of the WAR file you want to create, and $JAVA_HOME refers to the location where your JDK or JRE is installed.
23 3 Alan Kennedy
24
This will create a file called *WARNAME.war*, which is your web application contained in a single file.
25
26
h2. How to deploy a WAR.
27
28
Now that you have a single file containing your web application, you simply need to copy that file to the directory in your servlet container where web applications should reside. 
29
30 4 Alan Kennedy
On Apache Tomcat, the default deployment directory is called *webapps*. Simply drop your WAR file in there, and Tomcat should automatically deploy it.
31 3 Alan Kennedy
32 4 Alan Kennedy
On other containers, this directory will be different; you should read your documentation to see where you should place your WAR file.
33 1 Alan Kennedy
34
h2. Django WAR packaging.
35
36
There is a dedicated page for [[ModjyAndDjango|django and modjy]].
37
38
h2. Pylons WAR packaging.
39
40 2 Alan Kennedy
There is a dedicated page for [[ModjyAndPylons|django and pylons]].