Fetching contributors…
Cannot retrieve contributors at this time
86 lines (56 sloc) 2.56 KB

Pylons on Jython

Pylons supports Jython as of v0.9.7.


The installation process is the same as CPython, as described in :ref:`getting_started`. At least Jython 2.5b2 is required.

Deploying to Java Web servers

The Java platform defines the Servlet API for creating web applications. The modjy library included with Jython provides a gateway between Java Servlets and WSGI applications.

The snakefight tool can create a WAR file from a Pylons application (and modjy) that's suitable for deployment to the various Servlet containers (such as Apache Tomcat or Sun's Glassfish).

Creating .wars with snakefight

First, install snakefight:

$ easy_install snakefight

This adds an additional command to distutils: :command:`bdist_war`.

Pylons applications are loaded from Paste, via its paste.app_factory entry point and a Paste style configuration file. :command:`bdist_war` knows how to setup Paste apps for deployment when specified the :option:`--paste-config` option:

$ paster make-config MyApp production.ini
$ jython bdist_war --paste-config production.ini

As with any distutils command the preferred options can instead be added to the :file:`setup.cfg` in the root directory of the project:

paste-config = production.ini

Then we can simply run:

$ jython bdist_war

:command:`bdist_war` creates a :file:`.war` with the following:

With the :option:`--paste-config` option, it also:

  • Creates a simple loader for the application/config
  • Generates a :file:`web.xml` deployment descriptor configuring modjy to load the application with the simple loader

For further information/usages, see snakefight's documentation.