File: PyServletInitializer.java

package info (click to toggle)
jython 2.7.2%2Brepack1-3
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 62,676 kB
  • sloc: python: 640,908; java: 306,458; xml: 1,984; sh: 522; ansic: 126; makefile: 76
file content (37 lines) | stat: -rw-r--r-- 1,314 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package org.python.util;

import java.util.Properties;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

/**
 * Initializes the jython runtime inside a servlet engine. Should be used with {@link PyFilter} to
 * initialize the system before the filter starts. Add the following to web.xml to run the
 * initializer:
 *
 * <pre>
 *   &lt;listener&gt;
 *       &lt;listener-class&gt;org.python.util.PyServletInitializer&lt;/listener-class&gt;
 *       &lt;load-on-startup&gt;1&lt;/load-on-startup&gt;
 *   &lt;/listener&gt;
 *</pre>
 *
 * To use modules from Python's standard library in servlets and filters initialized by this
 * listener, either add the standard library to the lib directory in WEB-INF, or add python.home as
 * a context-param. The latter can be done by adding the following to web.xml:
 *
 * <pre>
 * &lt;context-param&gt;
 *     &lt;param-name&gt;python.home&lt;/param-name&gt;
 *     &lt;param-value&gt;/usr/local/jython-2.5&lt;/param-value&gt;
 * &lt;/context-param&gt;
 * </pre>
 */
public class PyServletInitializer implements ServletContextListener {
    public void contextInitialized(ServletContextEvent evt) {
        PyServlet.init(new Properties(), evt.getServletContext());
    }

    public void contextDestroyed(ServletContextEvent evt) {}
}