org.quartz.ee.servlet
Class QuartzInitializerServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.quartz.ee.servlet.QuartzInitializerServlet
- All Implemented Interfaces:
- java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig
public class QuartzInitializerServlet
- extends javax.servlet.http.HttpServlet
A Servlet that can be used to initialize Quartz, if configured as a
load-on-startup servlet in a web application.
Using this start-up servlet may be preferred to using the QuartzInitializerListener
in some situations - namely when you want to initialize more than one scheduler in the same
application.
You'll want to add something like this to your WEB-INF/web.xml file:
<servlet>
<servlet-name>
QuartzInitializer
</servlet-name>
<display-name>
Quartz Initializer Servlet
</display-name>
<servlet-class>
org.quartz.ee.servlet.QuartzInitializerServlet
</servlet-class>
<load-on-startup>
1
</load-on-startup>
<init-param>
<param-name>config-file</param-name>
<param-value>/some/path/my_quartz.properties</param-value>
</init-param>
<init-param>
<param-name>shutdown-on-unload</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>start-scheduler-on-load</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
The init parameter 'config-file' can be used to specify the path (and
filename) of your Quartz properties file. If you leave out this parameter,
the default ("quartz.properties") will be used.
The init parameter 'shutdown-on-unload' can be used to specify whether you
want scheduler.shutdown() called when the servlet is unloaded (usually when
the application server is being shutdown). Possible values are "true" or
"false". The default is "true".
The init parameter 'start-scheduler-on-load' can be used to specify whether
you want the scheduler.start() method called when the servlet is first loaded.
If set to false, your application will need to call the start() method before
the scheduler begins to run and process jobs. Possible values are "true" or
"false". The default is "true", which means the scheduler is started.
A StdSchedulerFactory instance is stored into the ServletContext. You can gain access
to the factory from a ServletContext instance like this:
StdSchedulerFactory factory = (StdSchedulerFactory) ctx
.getAttribute(QuartzFactoryServlet.QUARTZ_FACTORY_KEY);
The init parameter 'servlet-context-factory-key' can be used to override the
name under which the StdSchedulerFactory is stored into the ServletContext, in
which case you will want to use this name rather than
QuartzFactoryServlet.QUARTZ_FACTORY_KEY
in the above example.
The init parameter 'start-delay-seconds' can be used to specify the amount
of time to wait after initializing the scheduler before scheduler.start()
is called.
Once you have the factory instance, you can retrieve the Scheduler instance by calling
getScheduler()
on the factory.
- Author:
- James House, Chuck Cavaness
- See Also:
- Serialized Form
Method Summary |
void |
destroy()
|
void |
doGet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
|
void |
doPost(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
|
void |
init(javax.servlet.ServletConfig cfg)
|
Methods inherited from class javax.servlet.http.HttpServlet |
doDelete, doHead, doOptions, doPut, doTrace, getLastModified, service, service |
Methods inherited from class javax.servlet.GenericServlet |
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 |
QUARTZ_FACTORY_KEY
public static final java.lang.String QUARTZ_FACTORY_KEY
- See Also:
- Constant Field Values
QuartzInitializerServlet
public QuartzInitializerServlet()
init
public void init(javax.servlet.ServletConfig cfg)
throws javax.servlet.ServletException
- Specified by:
init
in interface javax.servlet.Servlet
- Overrides:
init
in class javax.servlet.GenericServlet
- Throws:
javax.servlet.ServletException
destroy
public void destroy()
- Specified by:
destroy
in interface javax.servlet.Servlet
- Overrides:
destroy
in class javax.servlet.GenericServlet
doPost
public void doPost(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException,
java.io.IOException
- Overrides:
doPost
in class javax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
java.io.IOException
doGet
public void doGet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException,
java.io.IOException
- Overrides:
doGet
in class javax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
java.io.IOException
Copyright 2001-2019, Terracotta, Inc.