org.python.util
Class PyServlet

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by org.python.util.PyServlet
All Implemented Interfaces:
Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig

public class PyServlet
extends javax.servlet.http.HttpServlet

This servlet is used to re-serve Jython servlets. It stores bytecode for Jython servlets and re-uses it if the underlying .py file has not changed.

e.g. http://localhost:8080/test/hello.py


 from javax.servlet.http import HttpServlet
 class hello(HttpServlet):
     def doGet(self, req, res):
         res.setContentType("text/html");
         out = res.getOutputStream()
         print >>out, ""
         print >>out, "Hello World, How are we?"
         print >>out, "Hello World, how are we?"
         print >>out, ""
         print >>out, ""
         out.close()
 
in web.xml for the PyServlet context:
 <web-app>
     <servlet>
         <servlet-name>PyServlet</servlet-name>
         <servlet-class>org.python.util.PyServlet</servlet-class>
         <init-param>
             <param-name>python.home</param-name>
             <param-value>/usr/home/jython-2.5</param-value>
         </init-param>
     </servlet>
     <servlet-mapping>
         <servlet-name>PyServlet</servlet-name>
         <url-pattern>*.py</url-pattern>
     </servlet-mapping>
 </web-app>

 

See Also:
Serialized Form

Field Summary
static String SKIP_INIT_NAME
           
 
Constructor Summary
PyServlet()
           
 
Method Summary
 void destroy()
           
 void init()
           
 void reset()
          Clears the cache of loaded servlets and makes a new PythonInterpreter to service further requests.
 void service(javax.servlet.ServletRequest req, javax.servlet.ServletResponse res)
           
 
Methods inherited from class javax.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SKIP_INIT_NAME

public static final String SKIP_INIT_NAME
See Also:
Constant Field Values
Constructor Detail

PyServlet

public PyServlet()
Method Detail

init

public void init()
Overrides:
init in class javax.servlet.GenericServlet

service

public void service(javax.servlet.ServletRequest req,
                    javax.servlet.ServletResponse res)
             throws javax.servlet.ServletException,
                    IOException
Specified by:
service in interface javax.servlet.Servlet
Overrides:
service in class javax.servlet.http.HttpServlet
Throws:
javax.servlet.ServletException
IOException

destroy

public void destroy()
Specified by:
destroy in interface javax.servlet.Servlet
Overrides:
destroy in class javax.servlet.GenericServlet

reset

public void reset()
Clears the cache of loaded servlets and makes a new PythonInterpreter to service further requests.



Jython homepage