groovy.servlet
Class GroovyServlet

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by groovy.servlet.AbstractHttpServlet
              extended by groovy.servlet.GroovyServlet
All Implemented Interfaces:
ResourceConnector, Serializable, Servlet, ServletConfig

public class GroovyServlet
extends AbstractHttpServlet

This servlet will run Groovy scripts as Groovlets. Groovlets are scripts with these objects implicit in their scope:

Your script sources can be placed either in your web application's normal web root (allows for subdirectories) or in /WEB-INF/groovy/* (also allows subdirectories).

To make your web application more groovy, you must add the GroovyServlet to your application's web.xml configuration using any mapping you like, so long as it follows the pattern *.* (more on this below). Here is the web.xml entry:

    <servlet>
      <servlet-name>Groovy</servlet-name>
      <servlet-class>groovy.servlet.GroovyServlet</servlet-class>
    </servlet>

    <servlet-mapping>
      <servlet-name>Groovy</servlet-name>
      <url-pattern>*.groovy</url-pattern>
      <url-pattern>*.gdo</url-pattern>
    </servlet-mapping>
 

The URL pattern does not require the "*.groovy" mapping. You can, for example, make it more Struts-like but groovy by making your mapping "*.gdo".

Author:
Sam Pullara, Mark Turansky (markturansky at hotmail.com), Guillaume Laforge, Christian Stein, Marcel Overdijk
See Also:
ServletBinding, Serialized Form

Field Summary
 
Fields inherited from class groovy.servlet.AbstractHttpServlet
CONTENT_TYPE_TEXT_HTML, encoding, INC_PATH_INFO, INC_REQUEST_URI, INC_SERVLET_PATH, reflection, resourceNameMatcher, resourceNameReplaceAll, resourceNameReplacement, servletContext, verbose
 
Constructor Summary
GroovyServlet()
           
 
Method Summary
protected  GroovyScriptEngine createGroovyScriptEngine()
          Hook method to setup the GroovyScriptEngine to use.
 void init(ServletConfig config)
          Initialize the GroovyServlet.
 void service(HttpServletRequest request, HttpServletResponse response)
          Handle web requests to the GroovyServlet
 
Methods inherited from class groovy.servlet.AbstractHttpServlet
getResourceConnection, getScriptUri, getScriptUriAsFile, setVariables
 
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
 
Methods inherited from class javax.servlet.GenericServlet
destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GroovyServlet

public GroovyServlet()
Method Detail

init

public void init(ServletConfig config)
          throws ServletException
Initialize the GroovyServlet.

Specified by:
init in interface Servlet
Overrides:
init in class AbstractHttpServlet
Parameters:
config - the servlet configuration provided by the container
Throws:
ServletException - if this method encountered difficulties

service

public void service(HttpServletRequest request,
                    HttpServletResponse response)
             throws IOException
Handle web requests to the GroovyServlet

Overrides:
service in class HttpServlet
Throws:
IOException

createGroovyScriptEngine

protected GroovyScriptEngine createGroovyScriptEngine()
Hook method to setup the GroovyScriptEngine to use.
Subclasses may override this method to provide a custom engine.


Copyright © 2003-2010 The Codehaus. All rights reserved.