Commits

Anonymous committed 4fae8ef

update of docs, home page
CVS: ----------------------------------------------------------------------
CVS: Issue number:
CVS: If this change addresses one or more issues,
CVS: then enter the issue number(s) here.
CVS: Obtained from:
CVS: If this change has been taken from another system,
CVS: then name the system in this line, otherwise delete it.
CVS: Submitted by:
CVS: If this code has been contributed to the project by someone else; i.e.,
CVS: they sent us a patch or a set of diffs, then include their name/email
CVS: address here. If this is your work then delete this line.
CVS: Reviewed by:
CVS: If we are doing pre-commit code reviews and someone else has
CVS: reviewed your changes, include their name(s) here.
CVS: If you have not had it reviewed then delete this line.

git-svn-id: http://svn.opensymphony.com/svn/quartz/branches/b_quartz_1-5-x@37769f7d36a-ea1c-0410-88ea-9fd03e4c9665

  • Participants
  • Parent commits e19adbc
  • Branches b_quartz_1-5-x

Comments (0)

Files changed (70)

File docs/index.html

     <p>Quartz is freely usable, licensed under the 
 	<a href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0 license</a>.</p>
 
-    <h3><b>NEWS! 9/24/2005</b></h3>
+    <h3><b>NEWS! 3/3/2006</b></h3>
 
-    <p>Quartz 1.5.0 is now available for download.  Please look at
-    the <a href="http://wiki.opensymphony.com/display/QRTZ1/Quartz+1.5.0">release notes</a>, 
+    <p>Quartz 1.5.2 is now available for download.  Please look at
+    the <a href="http://wiki.opensymphony.com/display/QRTZ1/Quartz+1.5.2">release notes</a>, 
     which includes a full change-list.</p>
     
-    <h3><b>NEWS! 7/10/2005</b></h3>
-
-    <p>Chuck Cavaness is working on a book to be published about Quartz.  Lucky
-    for us, he's requesting our help reviewing the draft chapters to provide
-    feedback.  Find the  
-    <a href="book_chaps.html">downloadable chapters</a> as they are posted.</p>
     
     <h3>What can Quartz do for you?</h3>
     
     <p>If your application has tasks that need to occur at given moments 
-    in time, or if your system has recurring maintenance jobs  then Quartz may 
+    in time, or if your system has recurring maintenance jobs then Quartz may 
     be your ideal solution.</p>
     
     <p>Sample uses of job scheduling with Quartz:</p>

File docs/wikidocs/BestPractices.html

 <p><br clear="all" /></p>
 
 
-<h5><a name="BestPractices-JobDataMapTips">JobDataMap Tips</a></h5>
+<h5><a name="BestPractices-JobDataMapTips"></a>JobDataMap Tips</h5>
 
 <p>The <em>JobDataMap</em> that is found on the <em>JobExecutionContext</em> during <em>Job</em> execution serves as a convenience.  It is a merge of the <em>JobDataMap</em> found on the <em>JobDetail</em> and the one found on the <em>Trigger</em>, with the value in the latter overriding any same-named values in the former.</p>
 

File docs/wikidocs/BiDailyTrigger.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="BiDailyTrigger-TriggerThatExecutesEvery2Days">Trigger That Executes Every 2 Days</a></h1>
+				    <h1><a name="BiDailyTrigger-TriggerThatExecutesEvery2Days"></a>Trigger That Executes Every 2 Days</h1>
 
 <p><br clear="all" />
 At first glance, you would be tempted to use a CronTrigger. However, if this is truly to be every two days, CronTrigger won't work.  To illustrate this, simply think of how many days are in a typical month (28-31). A cron expression like "0 0 5 2/2 * ?" would give us a trigger that would restart its count at the beginning of every month.  This means that we would would get subsequent firings on July 30 and August 2, which is an interval of three days, not two.</p>

File docs/wikidocs/BiWeeklyTrigger.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="BiWeeklyTrigger-TriggerThatExecutesEvery2Weeks">Trigger That Executes Every 2 Weeks</a></h1>
+				    <h1><a name="BiWeeklyTrigger-TriggerThatExecutesEvery2Weeks"></a>Trigger That Executes Every 2 Weeks</h1>
 
 <p><br clear="all" />
 As with a trigger meant to fire every two days, CronTrigger won't work for this schedule. For more details, see <a href="BiDailyTrigger.html" title="BiDailyTrigger">Trigger That Fires Every 2 Days</a>. We'll need to use a SimpleTrigger:</p>

File docs/wikidocs/ConfigDataSources.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigDataSources-ConfigureDataSources">Configure DataSources</a></h1>
+				    <h1><a name="ConfigDataSources-ConfigureDataSources"></a>Configure DataSources</h1>
 
 
 <p>If you're using JDBC-Jobstore, you'll be needing a Datasource for its use (or two Datasources, if you're using JobStoreCMT). </p>
 
 <p><br clear="all" /></p>
 
-<h3><a name="ConfigDataSources-QuartzcreatedDatasourcesaredefinedwiththefollowingproperties%3A">Quartz-created Datasources are defined with the following properties:</a></h3>
+<h3><a name="ConfigDataSources-QuartzcreatedDatasourcesaredefinedwiththefollowingproperties%3A"></a>Quartz-created Datasources are defined with the following properties:</h3>
 <p><br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>String</td>
 <td class='confluenceTd'>null</td>
 </tr>
-</table>
+</tbody></table>
 
 
 <p><b>org.quartz.dataSource.NAME.driver</b> <br/>
 org.quartz.dataSource.myDS.maxConnections = 30</pre>
 </div></div>
 
-<h3><a name="ConfigDataSources-ReferencestoApplicationServerDatasourcesaredefinedwiththefollowingproperties%3A">References to Application Server Datasources are defined with the following properties:</a></h3>
+<h3><a name="ConfigDataSources-ReferencestoApplicationServerDatasourcesaredefinedwiththefollowingproperties%3A"></a>References to Application Server Datasources are defined with the following properties:</h3>
 <p><br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>String</td>
 <td class='confluenceTd'>null</td>
 </tr>
-</table>
+</tbody></table>
 
 
 <p><b>org.quartz.dataSource.NAME.jndiURL</b> <br/>
 
 <p><br clear="all" /></p>
 
-<h3><a name="ConfigDataSources-CustomConnectionProviderImplementations">Custom ConnectionProvider Implementations</a></h3>
+<h3><a name="ConfigDataSources-CustomConnectionProviderImplementations"></a>Custom ConnectionProvider Implementations</h3>
 <p><br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>String (clas name)</td>
 <td class='confluenceTd'>null</td>
 </tr>
-</table>
+</tbody></table>
 
 
 <p><b>org.quartz.dataSource.NAME.connectionProvider.class</b> <br/>

File docs/wikidocs/ConfigJDBCJobStoreClustering.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigJDBCJobStoreClustering-ClusteringwithJDBCJobStore">Clustering with JDBC-JobStore</a></h1>
+				    <h1><a name="ConfigJDBCJobStoreClustering-ClusteringwithJDBCJobStore"></a>Clustering with JDBC-JobStore</h1>
 
 <p><br clear="all" /></p>
 
 
 <p>Enable clustering by setting the "org.quartz.jobStore.isClustered" property to "true". Each instance in the cluster should use the same copy of the quartz.properties file. Exceptions of this would be to use properties files that are identical, with the following allowable exceptions: Different thread pool size, and different value for the "org.quartz.scheduler.instanceId" property. Each node in the cluster MUST have a unique instanceId, which is easily done (without needing different properties files) by placing "AUTO" as the value of this property.  See the info about the configuration properties of JDBC-JobStore for more information.</p>
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='noteMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
-<p>Never run clustering on separate machines, unless their clocks are synchronized using some form of time-sync service (daemon) that runs very regularly (the clocks must be within a second of each other). See <a href="http://www.boulder.nist.gov/timefreq/service/its.htm" title="Visit page outside Confluence">&#104;ttp://www.boulder.nist.gov/timefreq/service/its.htm</a> if you are unfamiliar with how to do this.</p></td></tr></table></div></div>
+<table cellpadding='5' width='85%' cellspacing='8px' class='noteMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p>Never run clustering on separate machines, unless their clocks are synchronized using some form of time-sync service (daemon) that runs very regularly (the clocks must be within a second of each other). See <a href="http://www.boulder.nist.gov/timefreq/service/its.htm" title="Visit page outside Confluence">&#104;ttp://www.boulder.nist.gov/timefreq/service/its.htm</a> if you are unfamiliar with how to do this.</p></td></tr></table>
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='noteMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
-<p>Never fire-up a non-clustered instance against the same set of tables that any other instance is running against. You may get serious data corruption, and will definitely experience eratic behavior.</p></td></tr></table></div></div>
+<table cellpadding='5' width='85%' cellspacing='8px' class='noteMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p>Never fire-up a non-clustered instance against the same set of tables that any other instance is running against. You may get serious data corruption, and will definitely experience eratic behavior.</p></td></tr></table>
 
 <div class="code"><div class="codeHeader"><b>Example Properties For A Clustered Scheduler</b></div><div class="codeContent">
 <pre class="code-java">#============================================================================

File docs/wikidocs/ConfigJobStoreCMT.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigJobStoreCMT-ConfigureJDBCJobStoreCMT">Configure JDBC-JobStoreCMT</a></h1>
+				    <h1><a name="ConfigJobStoreCMT-ConfigureJDBCJobStoreCMT"></a>Configure JDBC-JobStoreCMT</h1>
 
 
 <p>JDBCJobStore is used to store scheduling information (job, triggers and calendars) within a relational database.  There are actually two seperate JDBCJobStore classes that you can select between, depending on the transactional behaviour you need.  </p>
 
 <p>JobStoreCMT can be tuned with the following properties:
 <br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 </tr>
 <tr>
 </tr>
-</table>
+</tbody></table>
 <p>org.quartz.jobStore.dontSetNonManagedTXConnectionAutoCommitFalse|no|boolean|false|</p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <td class='confluenceTd'>org.quartz.jobStore.selectWithLockSQL</td>
 <td class='confluenceTd'>no</td>
 <td class='confluenceTd'>boolean</td>
 <td class='confluenceTd'>false</td>
 </tr>
-</table>
+</tbody></table>
 
 
 <p><b>org.quartz.jobStore.driverDelegateClass</b> <br/>

File docs/wikidocs/ConfigJobStoreTX.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigJobStoreTX-ConfigureJDBCJobStoreTX">Configure JDBC-JobStoreTX</a></h1>
+				    <h1><a name="ConfigJobStoreTX-ConfigureJDBCJobStoreTX"></a>Configure JDBC-JobStoreTX</h1>
 
 
 <p>JDBCJobStore is used to store scheduling information (job, triggers and calendars) within a relational database.  There are actually two seperate JDBCJobStore classes that you can select between, depending on the transactional behaviour you need.  </p>
 
 <p>JobStoreTX can be tuned with the following properties:
 <br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>boolean</td>
 <td class='confluenceTd'>false</td>
 </tr>
-</table>
+</tbody></table>
 
 
 <p><b>org.quartz.jobStore.driverDelegateClass</b> <br/>

File docs/wikidocs/ConfigListeners.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigListeners-ConfiguringGlobalListeners">Configuring Global Listeners</a></h1>
+				    <h1><a name="ConfigListeners-ConfiguringGlobalListeners"></a>Configuring Global Listeners</h1>
 
 <p>Global listeners can be instantiated and configured by StdSchedulerFactory, or your application can do it itself at runtime, and then register the listeners with the scheduler.  "Global" listeners listen to the events of every job/trigger rather than just the jobs/triggers that directly reference them.</p>
 

File docs/wikidocs/ConfigMain.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigMain-ConfigureMainSchedulerSettings">Configure Main Scheduler Settings</a></h1>
+				    <h1><a name="ConfigMain-ConfigureMainSchedulerSettings"></a>Configure Main Scheduler Settings</h1>
 
 
-<p>These properties configure tha identification of the scheduler, and various other 'top level' settings.
+<p>These properties configure the identification of the scheduler, and various other 'top level' settings.
 <br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>string (class name)</td>
 <td class='confluenceTd'>org.quartz.simpl.SimpleJobFactory</td>
 </tr>
-</table>
+</tbody></table>
 
 <p><b>org.quartz.scheduler.instanceName</b> <br/>
 Can be any string, and the value has no meaning to the scheduler itself - but rather serves as a mechanism for client code to distinguish schedulers when multiple instances are used within the same program.  If you are using the clustering features, you must use the same name for every instance in the cluster that is 'logically' the same Scheduler.</p>
 
 <p><b>org.quartz.scheduler.instanceId</b> <br/>
-Can be any string, and but must be unique for all schedulers working as if they are the same 'logical' Scheduler within a cluster. You may use the value "AUTO" as the instanceId if you wish the Id to be generated for you.</p>
+Can be any string, but must be unique for all schedulers working as if they are the same 'logical' Scheduler within a cluster. You may use the value "AUTO" as the instanceId if you wish the Id to be generated for you.</p>
 
 <p><b>org.quartz.scheduler.instanceIdGenerator.class</b> <br/>
 Only used if <em>org.quartz.scheduler.instanceId</em> is set to "AUTO".  Defaults to "org.quartz.simpl.SimpleInstanceIdGenerator", which generates an instance id based upon host name and time stamp.</p>
 Represent a name-value pair that will be placed into the "scheduler context" as strings. (see Scheduler.getContext()).  So for example, the setting "org.quartz.context.key.MyKey = MyValue" would perform the equivalent of scheduler.getContext().put("MyKey", "MyValue").
 <br clear="all" /></p>
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='noteMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
-<p>The Transaction-Related properties should be left out of the config file unless you are using JTA transactions.</p></td></tr></table></div></div>
+<table cellpadding='5' width='85%' cellspacing='8px' class='noteMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p>The Transaction-Related properties should be left out of the config file unless you are using JTA transactions.</p></td></tr></table>
 
 <p><b>org.quartz.scheduler.userTransactionURL</b> <br/>
 Should be set to the JNDI URL at which Quartz can locate the Application Server's UserTransaction manager.  The default value (if not specified) is "java:comp/UserTransaction" - which works for almost all Application Servers.  Websphere users may need to set this property to "jta/usertransaction".  This is only used if Quartz is configured to use JobStoreCMT, and <em>org.quartz.scheduler.wrapJobExecutionInUserTransaction</em> is set to true.</p>

File docs/wikidocs/ConfigPlugins.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigPlugins-ConfigureSchedulerPlugins">Configure Scheduler Plugins</a></h1>
+				    <h1><a name="ConfigPlugins-ConfigureSchedulerPlugins"></a>Configure Scheduler Plugins</h1>
 
 
 <p>Like listeners configuring plugins through the configuration file consists of giving then a name, and then specifying the class name, and any other properties to be set on the instance. The class must have a no-arg constructor, and the properties are set reflectively. Only primitive data type values (including Strings) are supported.</p>
 
 <p>There are several Plugins that come with Quartz, that can be found in the <em>org.quartz.plugins</em> package (and subpackages).  Example of configuring a few of them are as follows:</p>
 
-<h3><a name="ConfigPlugins-SampleconfigurationofLoggingTriggerHistoryPlugin">Sample configuration of Logging Trigger History Plugin</a></h3>
+<h3><a name="ConfigPlugins-SampleconfigurationofLoggingTriggerHistoryPlugin"></a>Sample configuration of Logging Trigger History Plugin</h3>
 
 <p>The logging trigger history plugin catches trigger events (it is also a trigger listener) and logs then with Jakarta Commons-Logging.  See the class's JavaDoc for a list of all the possible parameters.</p>
 
 
 <p><br clear="all" /></p>
 
-<h3><a name="ConfigPlugins-SampleconfigurationofJobInitializationPlugin">Sample configuration of Job Initialization Plugin</a></h3>
+<h3><a name="ConfigPlugins-SampleconfigurationofJobInitializationPlugin"></a>Sample configuration of Job Initialization Plugin</h3>
 
 <p>Job initialization plugin reads a set of jobs and triggers from an XML file, and adds them to the scheduler during initialization.  See the class's JavaDoc for more details.</p>
 
 
 <p><br clear="all" /></p>
 
-<h3><a name="ConfigPlugins-SampleconfigurationofShutdownHookPlugin">Sample configuration of Shutdown Hook Plugin</a></h3>
+<h3><a name="ConfigPlugins-SampleconfigurationofShutdownHookPlugin"></a>Sample configuration of Shutdown Hook Plugin</h3>
 
 <p>The shutdown-hook plugin catches the event of the JVM terminating, and calls shutdown on the scheduler.</p>
 

File docs/wikidocs/ConfigRAMJobStore.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigRAMJobStore-ConfigureRAMJobStore">Configure RAMJobStore</a></h1>
+				    <h1><a name="ConfigRAMJobStore-ConfigureRAMJobStore"></a>Configure RAMJobStore</h1>
 
 
 <p>RAMJobStore is used to store scheduling information (job, triggers and calendars) within memory.  RAMJobStore is fast and lightweight, but all scheduling information is lost when the process terminates.  </p>
 
 <p>RAMJobStore can be tuned with the following properties:
 <br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>int</td>
 <td class='confluenceTd'>60000</td>
 </tr>
-</table>
+</tbody></table>
 
 
 <p><b>org.quartz.jobStore.misfireThreshold</b> <br/>

File docs/wikidocs/ConfigRMI.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigRMI-ConfigureSchedulerRMISettings">Configure Scheduler RMI Settings</a></h1>
+				    <h1><a name="ConfigRMI-ConfigureSchedulerRMISettings"></a>Configure Scheduler RMI Settings</h1>
 
 
-<h3><a name="ConfigRMI-RMIServerSchedulerProperties">RMI Server Scheduler Properties</a></h3>
+<h3><a name="ConfigRMI-RMIServerSchedulerProperties"></a>RMI Server Scheduler Properties</h3>
 
 <p>None of the primary properties are required, and all have 'resonable' defaults.  When using Quartz via RMI, you need to start an instance of Quartz with it configured to "export" its services via RMI.  You then create clients to the server by configuring a Quartz scheduler to "proxy" its work to the server.
 <br clear="all" /></p>
 
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='tipMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/check.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<table cellpadding='5' width='85%' cellspacing='8px' class='tipMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/check.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
 <p>Some users experience problems with class availability (namely Job classes) between the client and server.  To work through these problems you'll need an understanding of RMI's "codebase" and RMI security managagers.  You may find these resources to be useful:</p>
 
 <p>An excellent description of RMI and codebase: <a href="http://www.kedwards.com/jini/codebase.html" title="Visit page outside Confluence">&#104;ttp://www.kedwards.com/jini/codebase.html</a> . One of the important points is to realize that "codebase" is used by the client!</p>
 <p>Quick info about security managers: <a href="http://gethelp.devx.com/techtips/java_pro/10MinuteSolutions/10min0500.asp" title="Visit page outside Confluence">&#104;ttp://gethelp.devx.com/techtips/java_pro/10MinuteSolutions/10min0500.asp</a></p>
 
 <p>And finally from the java API docs, read the docs for the RMISecurityManager<br/>
-<a href="http://java.sun.com/j2se/1.4.2/docs/api/java/rmi/RMISecurityManager.html" title="Visit page outside Confluence">&#104;ttp://java.sun.com/j2se/1.4.2/docs/api/java/rmi/RMISecurityManager.html</a></p></td></tr></table></div></div>
+<a href="http://java.sun.com/j2se/1.4.2/docs/api/java/rmi/RMISecurityManager.html" title="Visit page outside Confluence">&#104;ttp://java.sun.com/j2se/1.4.2/docs/api/java/rmi/RMISecurityManager.html</a></p></td></tr></table>
 
 <p><br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>no</td>
 <td class='confluenceTd'>false</td>
 </tr>
-</table>
+</tbody></table>
 
 <p><b>org.quartz.scheduler.rmi.export</b><br/>
 If you want the Quartz Scheduler to export itself via RMI as a server then set the 'rmi.export' flag to true.  </p>
 <p><b>org.quartz.scheduler.rmi.proxy</b><br/>
 If you want to connect to (use) a remotely served scheduler, then set the 'org.quartz.scheduler.rmi.proxy' flag to true.  You must also then specify a  host and port for the RMI Registry process - which is typically 'localhost' port 1099.</p>
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='infoMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
-<p>It does not make sense to specify a 'true' value for both 'org.quartz.scheduler.rmi.export' and 'org.quartz.scheduler.rmi.proxy' in the same config file - if you do, the 'export' option will be ignored.  A value of 'false' for both 'export' and 'proxy' properties is of course valid, if you're not using Quartz via RMI.</p></td></tr></table></div></div>
+<table cellpadding='5' width='85%' cellspacing='8px' class='infoMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p>It does not make sense to specify a 'true' value for both 'org.quartz.scheduler.rmi.export' and 'org.quartz.scheduler.rmi.proxy' in the same config file - if you do, the 'export' option will be ignored.  A value of 'false' for both 'export' and 'proxy' properties is of course valid, if you're not using Quartz via RMI.</p></td></tr></table>
 
 
                     			    </td>

File docs/wikidocs/ConfigThreadPool.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ConfigThreadPool-ConfigureThreadPoolSettings">Configure ThreadPool Settings</a></h1>
+				    <h1><a name="ConfigThreadPool-ConfigureThreadPoolSettings"></a>Configure ThreadPool Settings</h1>
 
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>int</td>
 <td class='confluenceTd'>Thread.NORM_PRIORITY (5)</td>
 </tr>
-</table>
+</tbody></table>
 
 <p><b>org.quartz.threadPool.class</b> <br/>
 Is the name of the ThreadPool implementation you wish to use.  The threadpool that ships with Quartz is "org.quartz.simpl.SimpleThreadPool", and should meet the needs of nearly every user.  It has very simple behavior and is very well tested.  It provides a fixed-size pool of threads that 'live' the lifetime of the Scheduler.</p>
 
 <p><br clear="all" /></p>
 
-<h3><a name="ConfigThreadPool-SimpleThreadPoolSpecificProperties">SimpleThreadPool-Specific Properties</a></h3>
+<h3><a name="ConfigThreadPool-SimpleThreadPoolSpecificProperties"></a>SimpleThreadPool-Specific Properties</h3>
 <p><br clear="all" /></p>
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Property Name</th>
 <th class='confluenceTh'>Required</th>
 <td class='confluenceTd'>boolean</td>
 <td class='confluenceTd'>false</td>
 </tr>
-</table>
+</tbody></table>
 
 <p><b>org.quartz.threadPool.makeThreadsDaemons</b> <br/>
 Can be set to "true" to have the threads in the pool created as daemon threads.  Default is "false".</p>
 
 <p><br clear="all" /></p>
 
-<h3><a name="ConfigThreadPool-CustomThreadPools">Custom ThreadPools</a></h3>
+<h3><a name="ConfigThreadPool-CustomThreadPools"></a>Custom ThreadPools</h3>
 
 <p><br clear="all" />
 If you use your own implementation of a thread pool, you can have properties set on it reflectively simply by naming the property as thus:</p>

File docs/wikidocs/Cookbook.html

 	<li><a href="SchedulerStandby.html" title="SchedulerStandby">Placing a Scheduler in Stand-by Mode</a></li>
 	<li><a href="ShutdownScheduler.html" title="ShutdownScheduler">Shutting Down a Scheduler</a></li>
 	<li><a href="ServletInitScheduler.html" title="ServletInitScheduler">Initializing a Scheduler Within a Servlet Container</a></li>
-	<li>Initializing a Scheduler With Job And Triggers Defined in an XML file</li>
+	<li><a href="JobInitPlugin.html" title="JobInitPlugin">Initializing a Scheduler With Job And Triggers Defined in an XML file</a></li>
 </ul>
 
 

File docs/wikidocs/CreateScheduler.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="CreateScheduler-InstantiatingaScheduler">Instantiating a Scheduler</a></h1>
+				    <h1><a name="CreateScheduler-InstantiatingaScheduler"></a>Instantiating a Scheduler</h1>
 
 <p><br clear="all" /></p>
 

File docs/wikidocs/CronTriggers Tutorial.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='noteMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
-<p>Some of the content in this tutorial is taken from the Quartz 1.4.2 javadocs for <tt>CronTrigger</tt>.</p></td></tr></table></div></div>
+				    <table cellpadding='5' width='85%' cellspacing='8px' class='noteMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/warning.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p>Some of the content in this tutorial is taken from the Quartz 1.4.2 javadocs for <tt>CronTrigger</tt>.</p></td></tr></table>
 
-<h3><a name="CronTriggersTutorial-Introduction">Introduction</a></h3>
+<h3><a name="CronTriggersTutorial-Introduction"></a>Introduction</h3>
 
 <p><tt>cron</tt> is a UNIX tool that has been around for a long time, so its scheduling capabilities are powerful and proven. The <tt>CronTrigger</tt> class is based on the scheduling capabilities of cron.</p>
 
 
 <p>Cron expressions are powerful, but can be pretty confusing. This tutorial aims to take some of the mystery out of creating a cron expression, giving users a resource which they can visit before having to ask in a forum or mailing list.</p>
 
-<h3><a name="CronTriggersTutorial-Format">Format</a></h3>
+<h3><a name="CronTriggersTutorial-Format"></a>Format</h3>
 
 <p>A cron expression is a string comprised of 6 or 7 fields separated by white space. Fields can contain any of the allowed values, along with various combinations of the allowed special characters for that field. The fields are as follows:</p>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Field Name</th>
 <th class='confluenceTh'>Mandatory?</th>
 <td class='confluenceTd'>empty, 1970-2099</td>
 <td class='confluenceTd'>, - * /</td>
 </tr>
-</table>
+</tbody></table>
 
 <p>So cron expressions can be as simple as this: <tt>* * * * ? *</tt><br/>
 or more complex, like this: <tt>0 0/5 14,18,3-39,52 ? JAN,MAR,SEP MON-FRI 2002-2010</tt></p>
 
-<h3><a name="CronTriggersTutorial-Specialcharacters">Special characters</a></h3>
+<h3><a name="CronTriggersTutorial-Specialcharacters"></a>Special characters</h3>
 
 <ul>
 	<li><b><tt>&#42;</tt></b> (<em>"all values"</em>) - used to select all values within a field. For example, "&#42;" in the minute field means <em>"every minute"</em>.</li>
 </ul>
 
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='tipMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/check.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
-<p>The 'L' and 'W' characters can also be combined in the day-of-month field to yield 'LW', which translates to <em>"last weekday of the month"</em>.</p></td></tr></table></div></div>
+<table cellpadding='5' width='85%' cellspacing='8px' class='tipMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/check.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p>The 'L' and 'W' characters can also be combined in the day-of-month field to yield 'LW', which translates to <em>"last weekday of the month"</em>.</p></td></tr></table>
 
 <ul>
 	<li><b><tt>#</tt></b> - used to specify "the nth" XXX day of the month. For example, the value of "6#3" in the day-of-week field means <em>"the third Friday of the month"</em> (day 6 = Friday and "#3" = the 3rd one in the month). Other examples: "2#1" = the first Monday of the month and "4#5" = the fifth Wednesday of the month. Note that if you specify "#5" and there is not 5 of the given day-of-week in the month, then no firing will occur that month.</li>
 </ul>
 
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='infoMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
-<p>The legal characters and the names of months and days of the week are not case sensitive. <tt>MON</tt> is the same as <tt>mon</tt>.</p></td></tr></table></div></div>
+<table cellpadding='5' width='85%' cellspacing='8px' class='infoMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p>The legal characters and the names of months and days of the week are not case sensitive. <tt>MON</tt> is the same as <tt>mon</tt>.</p></td></tr></table>
 
-<h3><a name="CronTriggersTutorial-Examples">Examples</a></h3>
+<h3><a name="CronTriggersTutorial-Examples"></a>Examples</h3>
 
 <p>Here are some full examples:</p>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'>Expression</th>
 <th class='confluenceTh'>Meaning</th>
 <td class='confluenceTd'><tt>0 11 11 11 11 ?</tt></td>
 <td class='confluenceTd'>Fire every November 11th at 11:11am.</td>
 </tr>
-</table>
+</tbody></table>
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='warningMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/forbidden.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
-<p>Pay attention to the effects of '?' and '*' in the day-of-week and day-of-month fields!</p></td></tr></table></div></div>
+<table cellpadding='5' width='85%' cellspacing='8px' class='warningMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/forbidden.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<p>Pay attention to the effects of '?' and '*' in the day-of-week and day-of-month fields!</p></td></tr></table>
 
-<h3><a name="CronTriggersTutorial-Notes">Notes</a></h3>
+<h3><a name="CronTriggersTutorial-Notes"></a>Notes</h3>
 <ul>
 	<li>Support for the features described for the 'C' character is not complete.</li>
 	<li>Support for specifying both a day-of-week and a day-of-month value is not complete (you must currently use the '?' character in one of these fields).</li>

File docs/wikidocs/DailyTrigger.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="DailyTrigger-TriggerThatExecutesEveryDay">Trigger That Executes Every Day</a></h1>
-<h2><a name="DailyTrigger-Usingorg.quartz.helpers.TriggerUtils">Using org.quartz.helpers.TriggerUtils</a></h2>
+				    <h1><a name="DailyTrigger-TriggerThatExecutesEveryDay"></a>Trigger That Executes Every Day</h1>
+<h2><a name="DailyTrigger-Usingorg.quartz.helpers.TriggerUtils"></a>Using org.quartz.helpers.TriggerUtils</h2>
 <p><em>(TriggerUtils note: in 1.5.x, org.quartz.helpers.TriggerUtils has moved to org.quartz.TriggerUtils.)</em></p>
 <div class="code"><div class="codeHeader"><b>Trigger That Executes Every Day at 3:00PM</b></div><div class="codeContent">
 <pre class="code-java">Trigger trigger = TriggerUtils.makeDailyTrigger(15, 0);
 trigger.setGroup(<span class="code-quote">"group1"</span>);</pre>
 </div></div>
 
-<h2><a name="DailyTrigger-Doingitmanually">Doing it manually</a></h2>
+<h2><a name="DailyTrigger-Doingitmanually"></a>Doing it manually</h2>
 <p>If you would like a Trigger that executes every day at a specified time, use CronTrigger:</p>
 <div class="code"><div class="codeHeader"><b>CronTrigger That Executes Every Day at 3:00PM</b></div><div class="codeContent">
 <pre class="code-java">Trigger trigger = <span class="code-keyword">new</span> CronTrigger(<span class="code-quote">"trigger1"</span>, <span class="code-quote">"group1"</span>);

File docs/wikidocs/DefineJobWithData.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="DefineJobWithData-DefiningaJob">Defining a Job</a></h1>
+				    <h1><a name="DefineJobWithData-DefiningaJob"></a>Defining a Job</h1>
 
 <p><br clear="all" /></p>
 

File docs/wikidocs/Documentation.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h3><a name="Documentation-1.Overview">1. Overview</a></h3>
+				    <h3><a name="Documentation-1.Overview"></a>1. Overview</h3>
 
 <ol>
 	<li><a href="License.html" title="License">License</a></li>
 </ol>
 
 
-<h3><a name="Documentation-2.QuartzVersions">2. Quartz Versions</a></h3>
+<h3><a name="Documentation-2.QuartzVersions"></a>2. Quartz Versions</h3>
 
 <ul>
-	<li>Current release - <a href="Quartz 1.5.1.html" title="Quartz 1.5.1">Quartz 1.5.1</a></li>
+	<li>Current release - <a href="Quartz 1.5.2.html" title="Quartz 1.5.2">Quartz 1.5.2</a></li>
 	<li><a href="Releases.html" title="Releases">Previous Releases</a></li>
 </ul>
 
 
-<h3><a name="Documentation-3.LearningQuartz">3. Learning Quartz</a></h3>
+<h3><a name="Documentation-3.LearningQuartz"></a>3. Learning Quartz</h3>
 
 <p><b>Tutorials</b></p>
 
 </ol>
 
 
-<h3><a name="Documentation-4.ReferenceGuide">4. Reference Guide</a></h3>
+<h3><a name="Documentation-4.ReferenceGuide"></a>4. Reference Guide</h3>
 
 <ol>
 	<li><a href="Configuration.html" title="Configuration">Configuration</a></li>
 </ol>
 
 
-<h3><a name="Documentation-5.Thirdpartyintegration">5. Third-party integration</a></h3>
+<h3><a name="Documentation-5.Thirdpartyintegration"></a>5. Third-party integration</h3>
 
 <ol>
 	<li><a href="http://www.opensymphony.com/webwork/wikidocs/Quartz.html" title="Visit page outside Confluence">Quartz and XWork/WebWork</a></li>

File docs/wikidocs/Example1.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="Example1-Example1YourFirstQuartzProgram">Example 1 - Your First Quartz Program</a></h1>
+				    <h1><a name="Example1-Example1YourFirstQuartzProgram"></a>Example 1 - Your First Quartz Program</h1>
 
-<h2><a name="Example1-Overview">Overview</a></h2>
+<h2><a name="Example1-Overview"></a>Overview</h2>
 <p>This example is designed to demonstrate how to get up and running with Quartz.   This example will fire off a simple job that says "Hello World".</p>
 
 <p>The program will perform the following actions:</p>
 </ul>
 
 
-<h2><a name="Example1-RunningtheExample">Running the Example</a></h2>
+<h2><a name="Example1-RunningtheExample"></a>Running the Example</h2>
 <p>This example can be executed from the <b>examples/example1</b> directory.   There are two out-of-the-box methods for running this example</p>
 
 <ul>
 </ul>
 
 
-<h2><a name="Example1-TheCode">The Code</a></h2>
+<h2><a name="Example1-TheCode"></a>The Code</h2>
 <p>The code for this example resides in the package <b>org.quartz.examples.example1</b>.   </p>
 
 <p>The code in this example is made up of the following classes:</p>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Class Name </th>
 <th class='confluenceTh'> Description</th>
 <td class='confluenceTd'> HelloJob </td>
 <td class='confluenceTd'> A simple job that says Hello World</td>
 </tr>
-</table>
+</tbody></table>
 
-<h3><a name="Example1-HelloJob">HelloJob</a></h3>
+<h3><a name="Example1-HelloJob"></a>HelloJob</h3>
 <p>HelloJob is a simple job that implements the <em>Job</em> interface and logs a nice message to the log (by default, this will simply go to the screen).   The current date and time is printed in the job so that you can see exactly when the job is run.</p>
 
 <div class="code"><div class="codeContent">
 }</pre>
 </div></div>
 
-<h3><a name="Example1-SimpleExample">SimpleExample</a></h3>
+<h3><a name="Example1-SimpleExample"></a>SimpleExample</h3>
 <p>The program starts by getting an instance of the Scheduler.  This is done by creating a <em>StdSchedulerFactory</em> and then using it to create a scheduler.   This will create a simple, RAM-based scheduler.</p>
 
 <div class="code"><div class="codeContent">

File docs/wikidocs/Example3.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="Example3-Example3CronbasedTriggers">Example 3 - Cron-based Triggers</a></h1>
+				    <h1><a name="Example3-Example3CronbasedTriggers"></a>Example 3 - Cron-based Triggers</h1>
 
-<h2><a name="Example3-Overview">Overview</a></h2>
+<h2><a name="Example3-Overview"></a>Overview</h2>
 <p>This example is designed to demonstrate how you can use Cron Triggers to schedule jobs.   This example will fire off several simple jobs that say "Hello World" and display the date and time that the job was executed.</p>
 
 <p>The program will perform the following actions:</p>
 
 <p>Note:  Refer to the Quartz <a href="http://quartz.sourceforge.net/javadoc/org/quartz/CronTrigger.html" title="Visit page outside Confluence">javadoc</a> for a thorough explanation of Cron Triggers.</p>
 
-<h2><a name="Example3-RunningtheExample">Running the Example</a></h2>
+<h2><a name="Example3-RunningtheExample"></a>Running the Example</h2>
 <p>This example can be executed from the <b>examples/example3</b> directory.   There are two out-of-the-box methods for running this example</p>
 
 <ul>
 </ul>
 
 
-<h2><a name="Example3-TheCode">The Code</a></h2>
+<h2><a name="Example3-TheCode"></a>The Code</h2>
 <p>The code for this example resides in the package <b>org.quartz.examples.example3</b>.   </p>
 
 <p>The code in this example is made up of the following classes:</p>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Class Name </th>
 <th class='confluenceTh'> Description</th>
 <td class='confluenceTd'> SimpleJob </td>
 <td class='confluenceTd'> A simple job that says Hello World and displays the date/time</td>
 </tr>
-</table>
+</tbody></table>
 
-<h3><a name="Example3-SimpleJob">SimpleJob</a></h3>
+<h3><a name="Example3-SimpleJob"></a>SimpleJob</h3>
 <p>SimpleJob is a simple job that implements the <em>Job</em> interface and logs a nice message to the log (by default, this will simply go to the screen).   The current date and time is printed in the job so that you can see exactly when the job is run.</p>
 
 
 }</pre>
 </div></div>
 
-<h3><a name="Example3-CronTriggerExample">CronTriggerExample</a></h3>
+<h3><a name="Example3-CronTriggerExample"></a>CronTriggerExample</h3>
 <p>The program starts by getting an instance of the Scheduler.  This is done by creating a <em>StdSchedulerFactory</em> and then using it to create a scheduler.   This will create a simple, RAM-based scheduler.</p>
 
 <div class="code"><div class="codeContent">

File docs/wikidocs/Example4.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="Example4-Example4JobParametersandJobState">Example 4 - Job Parameters and Job State</a></h1>
+				    <h1><a name="Example4-Example4JobParametersandJobState"></a>Example 4 - Job Parameters and Job State</h1>
 
-<h2><a name="Example4-Overview">Overview</a></h2>
+<h2><a name="Example4-Overview"></a>Overview</h2>
 <p>This example is designed to demonstrate how you can pass run-time parameters into quartz jobs and how you can maintain state in a job.</p>
 
 <p>The program will perform the following actions:</p>
 
 
 
-<h2><a name="Example4-RunningtheExample">Running the Example</a></h2>
+<h2><a name="Example4-RunningtheExample"></a>Running the Example</h2>
 <p>This example can be executed from the <b>examples/example4</b> directory.   There are two out-of-the-box methods for running this example</p>
 
 <ul>
 </ul>
 
 
-<h2><a name="Example4-TheCode">The Code</a></h2>
+<h2><a name="Example4-TheCode"></a>The Code</h2>
 <p>The code for this example resides in the package <b>org.quartz.examples.example4</b>.   </p>
 
 <p>The code in this example is made up of the following classes:</p>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Class Name </th>
 <th class='confluenceTh'> Description</th>
 <td class='confluenceTd'> ColorJob </td>
 <td class='confluenceTd'> A simple job that prints a favorite color (passed in as a run-time parameter) and displays its execution count.</td>
 </tr>
-</table>
+</tbody></table>
 
-<h3><a name="Example4-ColorJob">ColorJob</a></h3>
+<h3><a name="Example4-ColorJob"></a>ColorJob</h3>
 
 <p>ColorJob is a simple job that implements the <em>StateFulJob</em> interface and logs the following information when the job is executed:</p>
 
 
 <p>This variable is also incremented and displayed.  However, its count will always be displayed as "1" because Quartz will always instantiate a new instance of the class during each execution.   This prevents member variables from being used to maintain state.</p>
 
-<h3><a name="Example4-JobStateExample">JobStateExample </a></h3>
+<h3><a name="Example4-JobStateExample"></a>JobStateExample </h3>
 <p>The program starts by getting an instance of the Scheduler.  This is done by creating a <em>StdSchedulerFactory</em> and then using it to create a scheduler.   This will create a simple, RAM-based scheduler.</p>
 
 <div class="code"><div class="codeContent">

File docs/wikidocs/Example5.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="Example5-Example5JobMisfires">Example 5 - Job Misfires</a></h1>
+				    <h1><a name="Example5-Example5JobMisfires"></a>Example 5 - Job Misfires</h1>
 
-<h2><a name="Example5-Overview">Overview</a></h2>
+<h2><a name="Example5-Overview"></a>Overview</h2>
 <p>This example is designed to demonstrate how you can pass run-time parameters into quartz jobs and how you can maintain state in a job.</p>
 
 <p>The program will perform the following actions:</p>
 
 
 
-<h2><a name="Example5-RunningtheExample">Running the Example</a></h2>
+<h2><a name="Example5-RunningtheExample"></a>Running the Example</h2>
 <p>This example can be executed from the <b>examples/example5</b> directory.   There are two out-of-the-box methods for running this example</p>
 
 <ul>
 </ul>
 
 
-<h2><a name="Example5-TheCode">The Code</a></h2>
+<h2><a name="Example5-TheCode"></a>The Code</h2>
 <p>The code for this example resides in the package <b>org.quartz.examples.example5</b>.   </p>
 
 <p>The code in this example is made up of the following classes:</p>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Class Name </th>
 <th class='confluenceTh'> Description</th>
 <td class='confluenceTd'> MisfireJob </td>
 <td class='confluenceTd'> A simple job that takes 10 seconds to run</td>
 </tr>
-</table>
+</tbody></table>
 
-<h3><a name="Example5-MisfireJob">MisfireJob </a></h3>
+<h3><a name="Example5-MisfireJob"></a>MisfireJob </h3>
 
 <p>MisfireJob is a simple job that prints its execution time and then will wait for a period of time before completing.  The amount of wait time is defined by the job parameter EXECUTION_DELAY.  If this job parameter is not passed in, the job will default to a wait time of 5 seconds:</p>
 
 </div></div>
 
 
-<h3><a name="Example5-MisfireExample">MisfireExample</a></h3>
+<h3><a name="Example5-MisfireExample"></a>MisfireExample</h3>
 
 <p>The program starts by getting an instance of the Scheduler.  This is done by creating a <em>StdSchedulerFactory</em> and then using it to create a scheduler.   This will create a simple, RAM-based scheduler.</p>
 

File docs/wikidocs/Example6.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="Example6-Example6DealingwithJobExceptions">Example 6 - Dealing with Job Exceptions</a></h1>
+				    <h1><a name="Example6-Example6DealingwithJobExceptions"></a>Example 6 - Dealing with Job Exceptions</h1>
 
-<h2><a name="Example6-Overview">Overview</a></h2>
+<h2><a name="Example6-Overview"></a>Overview</h2>
 <p>This example is designed to demonstrate how can deal with job execution exceptions.   Jobs in Quartz are permitted to throw a <em>JobExecutionExceptions</em>.   When this exception is thrown, you can instruct quartz what action to take.</p>
 
 <p>The program will perform the following actions:</p>
 </ul>
 
 
-<h2><a name="Example6-RunningtheExample">Running the Example</a></h2>
+<h2><a name="Example6-RunningtheExample"></a>Running the Example</h2>
 <p>This example can be executed from the <b>examples/example6</b> directory.   There are two out-of-the-box methods for running this example</p>
 
 <ul>
 </ul>
 
 
-<h2><a name="Example6-TheCode">The Code</a></h2>
+<h2><a name="Example6-TheCode"></a>The Code</h2>
 <p>The code for this example resides in the package <b>org.quartz.examples.example6</b>.   </p>
 
 <p>The code in this example is made up of the following classes:</p>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Class Name </th>
 <th class='confluenceTh'> Description</th>
 <td class='confluenceTd'> BadJob2 </td>
 <td class='confluenceTd'> A simple job that will throw an exception and instruct quartz to never schedule the job again</td>
 </tr>
-</table>
+</tbody></table>
 
-<h3><a name="Example6-BadJob1">BadJob1</a></h3>
+<h3><a name="Example6-BadJob1"></a>BadJob1</h3>
 
 <p>BadJob1 is a simple job that simply creates an artificial exception (divide by zero).   When this exception is caught, a <em>JobExecutionException</em> is thrown and set to refire the job immediatly.</p>
 <div class="code"><div class="codeContent">
 
 <p>This will force quartz to run this job over and over and over and over again.</p>
 
-<h3><a name="Example6-BadJob2">BadJob2</a></h3>
+<h3><a name="Example6-BadJob2"></a>BadJob2</h3>
 
 <p>BadJob2 is a simple job that simply creates an artificial exception (divide by zero).   When this exception is caught, a <em>JobExecutionException</em> is thrown and set to ensure that quartz never runs the job again.</p>
 <div class="code"><div class="codeContent">
 
 <p>This will force quartz to shutdown this job so that it does not run again.</p>
 
-<h3><a name="Example6-JobExceptionExample">JobExceptionExample</a></h3>
+<h3><a name="Example6-JobExceptionExample"></a>JobExceptionExample</h3>
 
 <p>The program starts by getting an instance of the Scheduler.  This is done by creating a <em>StdSchedulerFactory</em> and then using it to create a scheduler.   This will create a simple, RAM-based scheduler.</p>
 

File docs/wikidocs/Examples Overview.html

 			    <td valign="top" class="pagebody">
 				    <p>Welcome to the documentation for the Quartz Example programs.   As of version 1.5, Quartz ships with 13 out-of-the-box examples that demonstrate the various features of Quartz and the Quartz API.   </p>
 
-<h2><a name="ExamplesOverview-WheretoFindtheExamples">Where to Find the Examples</a></h2>
+<h2><a name="ExamplesOverview-WheretoFindtheExamples"></a>Where to Find the Examples</h2>
 
 <p>All of the examples listed on this Wiki are part of the Quartz distribution.</p>
 
 <p>The source code for the examples are located in package <b>org.quartz.examples</b>.   Every example has its own sub-package, <b>org.quartz.examples.example1</b>, <b>org.quartz.examples.example2</b>, etc...</p>
 
 
-<h2><a name="ExamplesOverview-TheExamples">The Examples</a></h2>
+<h2><a name="ExamplesOverview-TheExamples"></a>The Examples</h2>
 
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Example </th>
 <th class='confluenceTh'> Title </th>
 <td class='confluenceTd'> Clustered Quartz </td>
 <td class='confluenceTd'> Demonstrates how Quartz can be used in a clustered environment and how Quartz can use the database to persist scheduling information</td>
 </tr>
-</table>
+</tbody></table>
 
                     			    </td>
 		    </tr>

File docs/wikidocs/FAQ.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="FAQ-FrequentlyAskedQuestions">Frequently Asked Questions</a></h1>
+				    <h1><a name="FAQ-FrequentlyAskedQuestions"></a>Frequently Asked Questions</h1>
 
 
 <p>General Questions:</p>
 
 
 
-<h3><a name="FAQ-GeneralQuestions">General Questions</a></h3>
+<h3><a name="FAQ-GeneralQuestions"></a>General Questions</h3>
 
-<h5><a name="FAQ-WhatisQuartz%3F">What is Quartz?  <a name="FAQ-whatQuartz"></a></a></h5>
+<h5><a name="FAQ-WhatisQuartz%3F"></a>What is Quartz?  <a name="FAQ-whatQuartz"></a></h5>
 
 <p>Quartz is a job scheduling system that can be integrated with, or used along side virtually any other software system. The term "job scheduler" seems to conjure different ideas for different people. As you read this tutorial, you should be able to get a firm idea of what we mean when we use this term, but in short, a job scheduler is a system that is responsible for executing (or notifying) other software components when a pre-determined (scheduled) time arrives.</p>
 
 
 <p>Although Quartz is extremely useful for simply running certain system processes on given schedules, the full potential of Quartz can be realized when you learn how to use it to drive the flow of your application's business processes.</p>
 
-<h5><a name="FAQ-WhatisQuartzFromaSoftwareComponentView%3F">What is Quartz - From a Software Component View? <a name="FAQ-whatComp"></a></a></h5>
+<h5><a name="FAQ-WhatisQuartzFromaSoftwareComponentView%3F"></a>What is Quartz - From a Software Component View? <a name="FAQ-whatComp"></a></h5>
 
 <p>Quartz is distributed as a small java library (.jar file) that contains all of the core Quartz functionality. The main interface (API) to this functionality is the Scheduler interface. It provides simple operations such as scheduling/unscheduling jobs, starting/stopping/pausing the scheduler.</p>
 
 
 <p>The main Quartz 'process' can be started and ran within your own application, as a stand-alone application (with an RMI interface), or within a J2EE app. server to be used as a resource by your J2EE components.</p>
 
-<h5><a name="FAQ-Whynotjustusejava.util.Timer%3F">Why not just use java.util.Timer? <a name="FAQ-notTimer"></a></a></h5>
+<h5><a name="FAQ-Whynotjustusejava.util.Timer%3F"></a>Why not just use java.util.Timer? <a name="FAQ-notTimer"></a></h5>
 
 <p>Since JDK 1.3, Java has "built-in" timer capabilities, through the java.util.Timer and java.util.TimerTask classes - why would someone use Quartz rather than these standard features?</p>
 
 
 <p>...of course to some simple applications these features may not be important, in which case it may then be the right decision not to use Quartz.</p>
 
-<h5><a name="FAQ-HowdoIbuildtheQuartzsource%3F">How do I build the Quartz source? <a name="FAQ-howBuild"></a></a></h5>
+<h5><a name="FAQ-HowdoIbuildtheQuartzsource%3F"></a>How do I build the Quartz source? <a name="FAQ-howBuild"></a></h5>
 
 <p>Although Quartz ships "pre-built" many people like to make their own alterations and/or build the latest 'non-released' version of Quartz from CVS. To do this, follow the instructions in the "README.TXT" file that ships with Quartz.</p>
 
-<h3><a name="FAQ-MiscellaneousQuestions">Miscellaneous Questions</a></h3>
+<h3><a name="FAQ-MiscellaneousQuestions"></a>Miscellaneous Questions</h3>
 
-<h5><a name="FAQ-HowmanyjobsisQuartzcapableofrunning%3F%7Banchor%3Ascale%29">How many jobs is Quartz capable of running? {anchor:scale)</a></h5>
+<h5><a name="FAQ-HowmanyjobsisQuartzcapableofrunning%3F%7Banchor%3Ascale%29"></a>How many jobs is Quartz capable of running? {anchor:scale)</h5>
 
 <p>This is a tough question to answer... the answer is basically "it depends".</p>
 
 <p>So here you are this far into the answer of "how many", and I still haven't given you a number <img class="emoticon" src="./icons/emoticons/wink.gif" height="20" width="20" align="absmiddle" alt="" border="0"/> And I really hate to, because of all of the variables mentioned above. So let me just say, there are installments of Quartz out there that are managing hundreds-of-thousands of Jobs and Triggers, and that at any given moment in time are executing dozens of jobs &#8211; and this excludes using load-balancing. With this in mind, most people should feel confident that they can get the performance out of Quartz that they need.</p>
 
 
-<h5><a name="FAQ-I%27mhavingissueswithusingQuartzviaRMI">I'm having issues with using Quartz via RMI <a name="FAQ-rmi"></a></a></h5>
+<h5><a name="FAQ-I%27mhavingissueswithusingQuartzviaRMI"></a>I'm having issues with using Quartz via RMI <a name="FAQ-rmi"></a></h5>
 
 <p>RMI can be a bit problematic, especially if you don't have an understanding of how class loading via RMI works. I highly recommend reading all of the JavaDOC available about RMI, and strongly suggest you read the following references, dug up by a kind Quartz user (Mike Curwen)</p>
 
 
 <blockquote><p>RMI's class loader will not download any classes from remote locations if no security manager has been set.</p></blockquote>
 
-<h3><a name="FAQ-QuestionsAboutJobs">Questions About Jobs</a></h3>
+<h3><a name="FAQ-QuestionsAboutJobs"></a>Questions About Jobs</h3>
 
-<h5><a name="FAQ-HowcanIcontroltheinstantiationofJobs%3F">How can I control the instantiation of Jobs? <a name="FAQ-jobFactory"></a></a></h5>
+<h5><a name="FAQ-HowcanIcontroltheinstantiationofJobs%3F"></a>How can I control the instantiation of Jobs? <a name="FAQ-jobFactory"></a></h5>
 
 <p>See org.quartz.spi.JobFactory and the org.quartz.Scheduler.setJobFactory(..) method.  </p>
 
 
-<h5><a name="FAQ-HowdoIkeepaJobfrombeingremovedafteritcompletes%3F">How do I keep a Job from being removed after it completes? <a name="FAQ-durable"></a></a></h5>
+<h5><a name="FAQ-HowdoIkeepaJobfrombeingremovedafteritcompletes%3F"></a>How do I keep a Job from being removed after it completes? <a name="FAQ-durable"></a></h5>
 
 <p>Set the property <em>JobDetail.setDurability(true)</em> - which instructs Quartz not to delete the Job when it becomes an "orphan" (when the Job not longer has a Trigger referencing it).</p>
 
-<h5><a name="FAQ-HowdoIkeepaJobfromfiringconcurrently%3F">How do I keep a Job from firing concurrently? <a name="FAQ-stateful"></a></a></h5>
+<h5><a name="FAQ-HowdoIkeepaJobfromfiringconcurrently%3F"></a>How do I keep a Job from firing concurrently? <a name="FAQ-stateful"></a></h5>
 
 <p>Make the job class implement StatefulJob rather than Job. Read the JavaDOC for StatefulJob for more information.</p>
 
-<h5><a name="FAQ-HowdoIstopaJobthatiscurrentlyexecuting%3F">How do I stop a Job that is currently executing? <a name="FAQ-interrupt"></a></a></h5>
+<h5><a name="FAQ-HowdoIstopaJobthatiscurrentlyexecuting%3F"></a>How do I stop a Job that is currently executing? <a name="FAQ-interrupt"></a></h5>
 
 <p>See the <em>org.quartz.InterruptableJob</em> interface, and the <em>Scheduler.interrupt(String, String)</em> method.</p>
 
-<h3><a name="FAQ-QuestionsAboutTriggers">Questions About Triggers</a></h3>
+<h3><a name="FAQ-QuestionsAboutTriggers"></a>Questions About Triggers</h3>
 
-<h5><a name="FAQ-HowdoIchainJobexecution%3FOr%2ChowdoIcreateaworkflow%3F">How do I chain Job execution? Or, how do I create a workflow? <a name="FAQ-chain"></a></a></h5>
+<h5><a name="FAQ-HowdoIchainJobexecution%3FOr%2ChowdoIcreateaworkflow%3F"></a>How do I chain Job execution? Or, how do I create a workflow? <a name="FAQ-chain"></a></h5>
 
 <p>There currently is no "direct" or "free" way to chain triggers with Quartz. However there are several ways you can accomplish it without much effort. Below is an outline of a couple approaches:</p>
 
 
 <p>In the future, Quartz will provide a much cleaner way to do this, but until then, you'll have to use one of the above approaches, or think of yet another that works better for you.</p>
 
-<h5><a name="FAQ-Whyisn%27tmytriggerfiring%3F">Why isn't my trigger firing? <a name="FAQ-paused"></a></a></h5>
+<h5><a name="FAQ-Whyisn%27tmytriggerfiring%3F"></a>Why isn't my trigger firing? <a name="FAQ-paused"></a></h5>
 
 <p>The most common reason for this is not having called <em>Scheduler.start()</em>, which tells the scheduler to start firing triggers.</p>
 
 <p>The second most common reason is that the trigger or trigger group has been paused.</p>
 
 
-<h5><a name="FAQ-DaylightSavingTimeandTriggers">Daylight Saving Time and Triggers <a name="FAQ-daylightSavings"></a></a></h5>
+<h5><a name="FAQ-DaylightSavingTimeandTriggers"></a>Daylight Saving Time and Triggers <a name="FAQ-daylightSavings"></a></h5>
 
 <p>CronTrigger and SimpleTrigger each handle daylight savings time in their own way - each in the way that is intuitive to the trigger type.</p>
 
 
 <p><b>CronTrigger</b> allows you to schedule jobs to fire at certain moments with respect to a "gregorian calendar".  Hence, if you create a trigger to fire every day at 10:00 am, before and after daylight savings time switches it will continue to do so.  However, depending on whether it was the Spring or Autumn daylight savings event, for that particular Sunday, the actual time interval between the firing of the trigger on Sundary morning at 10:00 am since its firing on Saturday morning at 10:00 am will not be 24 hours, but will instead be 23 or 25 hours respectively.  </p>
 
-<p>There is one additional point users must understand about CronTrigger with respect to daylight savings.  This is that you should take careful thought about creating schedules that fire between midnight and 3:00 am (the critical window of time depends on your trigger’s locale, as explained above).  The reason is that depending on your trigger’s schedule, and the particular daylight event, the trigger may be skipped or may appear to not fire for an hour or two.  As examples, say you are in the United States, where daylight savings events occur at 2:00 am.   If you have a CronTrrigger that fires every day at 2:15 am, then on the day of the beginning of daylight savings time the trigger will be skipped, since, 2:15 am never occurs that day.  If you have a CronTrigger that fires every 15 minutes of every hour of every day, then on the day daylight savings time ends you will have an hour of time for which no triggerings occur, because when 2:00 am arrives, it will become 1:00 am again, however all of the firings during the one o’clock hour have already occurred, and the trigger’s next fire time was set to 2:00 am – hence for the next hour no triggerings will occur.</p>
+<p>There is one additional point users must understand about CronTrigger with respect to daylight savings.  This is that you should take careful thought about creating schedules that fire between midnight and 3:00 am (the critical window of time depends on your trigger's locale, as explained above).  The reason is that depending on your trigger's schedule, and the particular daylight event, the trigger may be skipped or may appear to not fire for an hour or two.  As examples, say you are in the United States, where daylight savings events occur at 2:00 am.   If you have a CronTrrigger that fires every day at 2:15 am, then on the day of the beginning of daylight savings time the trigger will be skipped, since, 2:15 am never occurs that day.  If you have a CronTrigger that fires every 15 minutes of every hour of every day, then on the day daylight savings time ends you will have an hour of time for which no triggerings occur, because when 2:00 am arrives, it will become 1:00 am again, however all of the firings during the one o'clock hour have already occurred, and the trigger's next fire time was set to 2:00 am - hence for the next hour no triggerings will occur.</p>
 
-<div class="information-block" align='center'><div class='informationMacroPadding'><table cellpadding='5' width='85%' cellspacing='0' class='tipMacro' border='0'><tr><td width='16' valign='top'><img src="/images/icons/emoticons/check.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
+<table cellpadding='5' width='85%' cellspacing='8px' class='tipMacro' border="0" align='center'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/images/icons/emoticons/check.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>
 <p>In summary, all of this makes perfect sense, and should be easy to remember if you keep these two rules in mind:</p>
 <ul>
 	<li>SimpleTrigger ALWAYS fires exacly every N seconds, with no relation to the time of day.</li>
 	<li>CronTrigger ALWAYS fires at a given time of day and then computes its next time to fire. If that time does not occur on a given day, the trigger will be skipped.  If the time occurs twice in a given day, it only fires once, because after firing on that time the first time, it computes the next time of day to fire on.</li>
 </ul>
-</td></tr></table></div></div>
+</td></tr></table>
 
 
-<h3><a name="FAQ-QuestionsAboutJDBCJobStore">Questions About JDBCJobStore</a></h3>
+<h3><a name="FAQ-QuestionsAboutJDBCJobStore"></a>Questions About JDBCJobStore</h3>
 
-<h5><a name="FAQ-HowdoIimprovetheperformanceofJDBCJobStore%3F">How do I improve the performance of JDBC-JobStore? <a name="FAQ-jdbcPerf"></a></a></h5>
+<h5><a name="FAQ-HowdoIimprovetheperformanceofJDBCJobStore%3F"></a>How do I improve the performance of JDBC-JobStore? <a name="FAQ-jdbcPerf"></a></h5>
 
 <p>There are a few known ways to speed up JDBC-JobStore, only one of which is very practical.</p>
 
 create index idx_qrtz_ft_job_group on qrtz_fired_triggers(JOB_GROUP);</pre>
 </div></div>
 
-<h5><a name="FAQ-MyDBConnectionsdon%27trecoverproperlyifthedatabaseserverisrestarted.">My DB Connections don't recover properly if the database server is restarted. <a name="FAQ-jdbcValid"></a></a></h5>
+<h5><a name="FAQ-MyDBConnectionsdon%27trecoverproperlyifthedatabaseserverisrestarted."></a>My DB Connections don't recover properly if the database server is restarted. <a name="FAQ-jdbcValid"></a></h5>
 
 <p>If you're having Quartz create the connection data source (by specifying the connection parameters in the quartz properties file) make sure you have a connection validation query specified, such as:</p>
 
 
 <p>If you're datasource is managed by your application server, make sure the datasource is configured in such a way that it can detect failed connections.</p>
 
-<h3><a name="FAQ-QuestionsAboutTransactions">Questions About Transactions</a></h3>
+<h3><a name="FAQ-QuestionsAboutTransactions"></a>Questions About Transactions</h3>
 
-<h5><a name="FAQ-I%27musingJobStoreCMTandI%27mseeingdeadlocks%2CwhatcanIdo%3F">I'm using JobStoreCMT and I'm seeing deadlocks, what can I do? <a name="FAQ-cmtDead"></a></a></h5>
+<h5><a name="FAQ-I%27musingJobStoreCMTandI%27mseeingdeadlocks%2CwhatcanIdo%3F"></a>I'm using JobStoreCMT and I'm seeing deadlocks, what can I do? <a name="FAQ-cmtDead"></a></h5>
 
 <p>JobStoreCMT is in heavy use, under heavy load by many people. It is believed to be free of bugs that can cause deadlock. However, every now and then we get complaints about deadlocks. In all cases thus far, the problem has turned out to be "user error", thus the list below is some things for you to check if you are experiencing deadlocks.</p>
 

File docs/wikidocs/Features.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h3><a name="Features-RuntimeEnvironments">Runtime Environments</a></h3>
+				    <h3><a name="Features-RuntimeEnvironments"></a>Runtime Environments</h3>
 
 <ul>
 	<li>Quartz can run embedded within another free standing application</li>
 </ul>
 
 
-<h3><a name="Features-JobScheduling">Job Scheduling</a></h3>
+<h3><a name="Features-JobScheduling"></a>Job Scheduling</h3>
 
 <p>Jobs are scheduled to run when a given Trigger occurs. Triggers can be created with nearly any combination of the following directives:</p>
 
 
 <p>Jobs are given names by their creator and can also be organized into named groups. Triggers may also be given names and placed into groups, in order to easily organize them within the scheduler. Jobs can be added to the scheduler once, but registered with multiple Triggers. Within a J2EE environment, Jobs can perform their work as part of a distributed (XA) transaction.</p>
 
-<h3><a name="Features-JobExecution">Job Execution</a></h3>
+<h3><a name="Features-JobExecution"></a>Job Execution</h3>
 
 <ul>
 	<li>Jobs can be any Java class that implements the simple Job interface, leaving infinite possibilities for the work your Jobs can perform.</li>
 </ul>
 
 
-<h3><a name="Features-JobPersistence">Job Persistence</a></h3>
+<h3><a name="Features-JobPersistence"></a>Job Persistence</h3>
 
 <ul>
 	<li>The design of Quartz includes a JobStore interface that can be implemented to provide various mechanisms for the storage of jobs.</li>
 </ul>
 
 
-<h3><a name="Features-Transactions">Transactions</a></h3>
+<h3><a name="Features-Transactions"></a>Transactions</h3>
 
 <ul>
 	<li>Quartz can participate in JTA transactions, via the use of JobStoreCMT (a subclas of JDBCJobStore).</li>
 </ul>
 
 
-<h3><a name="Features-Clustering">Clustering</a></h3>
+<h3><a name="Features-Clustering"></a>Clustering</h3>
 
 <ul>
 	<li>Fail-over.</li>
 </ul>
 
 
-<h3><a name="Features-Listeners%26PlugIns">Listeners &amp; Plug-Ins</a></h3>
+<h3><a name="Features-Listeners%26PlugIns"></a>Listeners &amp; Plug-Ins</h3>
 <ul>
 	<li>Applications can catch scheduling events to monitor or control job/trigger behavior by implementing one or more listener interfaces.</li>
 	<li>The Plug-In mechanism can be used add functionality to Quartz, such keeping a history of job executions, or loading job and trigger definitions from a file.</li>

File docs/wikidocs/FifthWorkingDayTrigger.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="FifthWorkingDayTrigger-TriggerthatExecutesontheFifth%22WorkingDay%22ofEveryMonth">Trigger that Executes on the Fifth "Working Day" of Every Month</a></h1>
+				    <h1><a name="FifthWorkingDayTrigger-TriggerthatExecutesontheFifth%22WorkingDay%22ofEveryMonth"></a>Trigger that Executes on the Fifth "Working Day" of Every Month</h1>
 <p>For this example, assume that a "working day" is defined as any weekday that is not a business holiday.</p>
 
 <p>The first thing we must do is define a calendar that excludes days which are not working days. For example:</p>

File docs/wikidocs/JobInitPlugin.html

+<html>
+    <head>
+        <title>Quartz 1 - 
+        JobInitPlugin
+         </title>
+	    <link rel="stylesheet" href="styles/site.css" type="text/css" />
+        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    </head>
+
+    <body>
+	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
+		    <tr>
+			    <td valign="top" class="pagebody">
+				    <p>The following code is for reading job and trigger definitions from an xml config file called <em>quartz-jobs.xml</em>. The definitions are then automatically registered with the given scheduler.</p>
+
+<div class="preformatted"><div class="preformattedContent">
+<pre>Scheduler scheduler = ...;
+JobSchedulingDataProcessor xmlProcessor = new JobSchedulingDataProcessor();
+// the last parameter here (the boolean one)
+// is for overwriting existing jobs
+xmlProcessor.processFileAndScheduleJobs("quartz-jobs.xml", scheduler, true);
+</pre>
+</div></div> 
+
+<p>Here's an example xml config file:</p>
+
+<div class="preformatted"><div class="preformattedContent">
+<pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+&lt;quartz xmlns="http://www.opensymphony.com/quartz/JobSchedulingData"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        overwrite-existing-jobs="true"&gt;
+    &lt;job&gt;
+        &lt;job-detail&gt;
+            &lt;name&gt;my-very-clever-job&lt;/name&gt;
+            &lt;group&gt;MYJOB_GROUP&lt;/group&gt;
+            &lt;description&gt;The job description&lt;/description&gt;
+            &lt;job-class&gt;com.acme.scheduler.job.CleverJob&lt;/job-class&gt;
+            &lt;job-data-map allows-transient-data="false"&gt;
+                &lt;entry&gt;
+                    &lt;key&gt;burger-type&lt;/key&gt;
+                    &lt;value&gt;hotdog&lt;/value&gt;
+                &lt;/entry&gt;
+                &lt;entry&gt;
+                    &lt;key&gt;dressing-list&lt;/key&gt;
+                    &lt;value&gt;ketchup,mayo&lt;/value&gt;
+                &lt;/entry&gt;
+            &lt;/job-data-map&gt;
+        &lt;/job-detail&gt;
+        &lt;trigger&gt;
+            &lt;cron&gt;
+                &lt;name&gt;my-trigger&lt;/name&gt;
+                &lt;group&gt;MYTRIGGER_GROUP&lt;/group&gt;
+                &lt;job-name&gt;my-very-clever-job&lt;/job-name&gt;
+                &lt;job-group&gt;MYJOB_GROUP&lt;/job-group&gt;
+                &lt;!-- trigger every night at 4:30 am --&gt;
+                &lt;!-- do not forget to light the kitchen's light --&gt;
+                &lt;cron-expression&gt;0 30 4 * * ?&lt;/cron-expression&gt;
+            &lt;/cron&gt;
+        &lt;/trigger&gt;
+    &lt;/job&gt;
+&lt;/quartz&gt;
+</pre>
+</div></div>
+
+                    			    </td>
+		    </tr>
+	    </table>
+    </body>
+</html>

File docs/wikidocs/JobTriggers.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="JobTriggers-FindingTriggersofaJob">Finding Triggers of a Job</a></h1>
+				    <h1><a name="JobTriggers-FindingTriggersofaJob"></a>Finding Triggers of a Job</h1>
 <p><br clear="all" /></p>
 <div class="code"><div class="codeHeader"><b>Finding Triggers of a Job</b></div><div class="codeContent">
 <pre class="code-java">Trigger[] jobTriggers;

File docs/wikidocs/ListJobs.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ListJobs-ListingJobsintheScheduler">Listing Jobs in the Scheduler</a></h1>
+				    <h1><a name="ListJobs-ListingJobsintheScheduler"></a>Listing Jobs in the Scheduler</h1>
 <p><br clear="all" /></p>
 <div class="code"><div class="codeHeader"><b>Listing all Jobs in the scheduler</b></div><div class="codeContent">
 <pre class="code-java"><span class="code-object">String</span>[] jobGroups;

File docs/wikidocs/ListTriggers.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="ListTriggers-ListingTriggersintheScheduler">Listing Triggers in the Scheduler</a></h1>
+				    <h1><a name="ListTriggers-ListingTriggersintheScheduler"></a>Listing Triggers in the Scheduler</h1>
 <p><br clear="all" /></p>
 <div class="code"><div class="codeHeader"><b>Listing all Triggers in the scheduler</b></div><div class="codeContent">
 <pre class="code-java"><span class="code-object">String</span>[] triggerGroups;

File docs/wikidocs/MonthlyTrigger.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="MonthlyTrigger-TriggerThatExecutesEveryMonth">Trigger That Executes Every Month</a></h1>
+				    <h1><a name="MonthlyTrigger-TriggerThatExecutesEveryMonth"></a>Trigger That Executes Every Month</h1>
 <p>(note all examples fire at 5:00 AM.)</p>
 
-<h2><a name="MonthlyTrigger-Usingorg.quartz.helpers.TriggerUtils">Using org.quartz.helpers.TriggerUtils</a></h2>
+<h2><a name="MonthlyTrigger-Usingorg.quartz.helpers.TriggerUtils"></a>Using org.quartz.helpers.TriggerUtils</h2>
 <p><em>(TriggerUtils note: in 1.5.x, org.quartz.helpers.TriggerUtils has moved to org.quartz.TriggerUtils.)</em></p>
 <div class="code"><div class="codeHeader"><b>Trigger That Executes On the 15th of Every Month</b></div><div class="codeContent">
 <pre class="code-java">Trigger trigger = TriggerUtils.makeMonthlyTrigger(15, 5, 0);
 trigger.setGroup(<span class="code-quote">"group1"</span>);</pre>
 </div></div>
 
-<h2><a name="MonthlyTrigger-Doingitmanually">Doing it manually</a></h2>
+<h2><a name="MonthlyTrigger-Doingitmanually"></a>Doing it manually</h2>
 <p>Unlike the rest of the examples here, this one <em>cannot</em> be implemented with SimpleTrigger, because there is not an even interval of time between each month. Our only option is CronTrigger, but what we can do with CronTrigger is harldy limited:</p>
 
 <div class="code"><div class="codeHeader"><b>CronTrigger That Executes On the First Day of Every Month</b></div><div class="codeContent">

File docs/wikidocs/NintyMinTrigger.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h1><a name="NintyMinTrigger-TriggerThatExecutesEvery90minutes">Trigger That Executes Every 90 minutes</a></h1>
-<h2><a name="NintyMinTrigger-Usingorg.quartz.helpers.TriggerUtils">Using org.quartz.helpers.TriggerUtils</a></h2>
+				    <h1><a name="NintyMinTrigger-TriggerThatExecutesEvery90minutes"></a>Trigger That Executes Every 90 minutes</h1>
+<h2><a name="NintyMinTrigger-Usingorg.quartz.helpers.TriggerUtils"></a>Using org.quartz.helpers.TriggerUtils</h2>
 <p><em>(TriggerUtils note: in 1.5.x, org.quartz.helpers.TriggerUtils has moved to org.quartz.TriggerUtils.)</em></p>
 <div class="code"><div class="codeHeader"><b>Trigger That Executes Every Ninety Minutes</b></div><div class="codeContent">
 <pre class="code-java">/* 
 trigger.setGroup(<span class="code-quote">"group1"</span>);</pre>
 </div></div>
 
-<h2><a name="NintyMinTrigger-Doingitmanually">Doing it manually</a></h2>
+<h2><a name="NintyMinTrigger-Doingitmanually"></a>Doing it manually</h2>
 <div class="code"><div class="codeHeader"><b>Trigger That Executes Every Ninety Minutes</b></div><div class="codeContent">
 <pre class="code-java">/* 
  * Note that <span class="code-keyword">this</span> will create a trigger that starts immediately.

File docs/wikidocs/Quartz 1.4.3.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h2><a name="Quartz1.4.3-Quartz1.4.3ReleaseNotes">Quartz 1.4.3 Release Notes</a></h2>
+				    <h2><a name="Quartz1.4.3-Quartz1.4.3ReleaseNotes"></a>Quartz 1.4.3 Release Notes</h2>
 
-<h3><a name="Quartz1.4.3-KeyChanges">Key Changes</a></h3>
+<h3><a name="Quartz1.4.3-KeyChanges"></a>Key Changes</h3>
 <ul>
 	<li>Various minor bug fixes (see change log)</li>
 	<li>Small feature improvements (see change log)</li>
 </ul>
 
 
-<h3><a name="Quartz1.4.3-MigrationNotes">Migration Notes</a></h3>
+<h3><a name="Quartz1.4.3-MigrationNotes"></a>Migration Notes</h3>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Version </th>
 <th class='confluenceTh'> Description </th>
 <td class='confluenceTd'>&nbsp;</td>
 <td class='confluenceTd'>&nbsp;</td>
 </tr>
-</table>
+</tbody></table>
 
 
 
-<h3><a name="Quartz1.4.3-Changelog">Changelog</a></h3>
+<h3><a name="Quartz1.4.3-Changelog"></a>Changelog</h3>
 
-<p>
+<p><a name="jiraissues">
     <table  width="100%" cellspacing="0" class="grid">
         <tr>
             <th colspan="3" style="text-align: left;">
-                <a href="http://jira.opensymphony.com/secure/IssueNavigator.jspa?&pid=10060&fixfor=21422&sorter/field=issuekey&sorter/order=DESC&tempMax=25&reset=true&">OpenSymphony JIRA</a>
+                                    <a href="/spaces/doexportspace.action?key=QRTZ1&macro.refresh=true#jiraissues"><img src="/images/icons/refresh_16.png" height="16" width="16" border="0" align="right" title="refresh"/></a>
+                                <a href="http://jira.opensymphony.com/secure/IssueNavigator.jspa?&pid=10060&fixfor=21422&sorter/field=issuekey&sorter/order=DESC&tempMax=25&reset=true&">OpenSymphony JIRA</a>
                 <span class="smalltext">(25 issues)</span>
             </th>
         </tr>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-57">QUARTZ-57</a>
                                     </td>
                                 <td >
-                                            <a href="http://jira.opensymphony.com/browse/QUARTZ-57">MySQL InnoDB Script</a>
+                                            <a href="http://jira.opensymphony.com/browse/QUARTZ-57">MySQL InnoDB Script </a>
                                     </td>
                             </tr>
                                     <tr class="rowNormal">

File docs/wikidocs/Quartz 1.4.4.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h2><a name="Quartz1.4.4-Quartz1.4.4ReleaseNotes">Quartz 1.4.4 Release Notes</a></h2>
+				    <h2><a name="Quartz1.4.4-Quartz1.4.4ReleaseNotes"></a>Quartz 1.4.4 Release Notes</h2>
 
-<h3><a name="Quartz1.4.4-KeyChanges">Key Changes</a></h3>
+<h3><a name="Quartz1.4.4-KeyChanges"></a>Key Changes</h3>
 <ul>
 	<li>Various minor bug fixes (see change log)</li>
 	<li>Small feature improvements (see change log)</li>
 </ul>
 
 
-<h3><a name="Quartz1.4.4-MigrationNotes">Migration Notes</a></h3>
+<h3><a name="Quartz1.4.4-MigrationNotes"></a>Migration Notes</h3>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Version </th>
 <th class='confluenceTh'> Description </th>
 <td class='confluenceTd'>&nbsp;</td>
 <td class='confluenceTd'>&nbsp;</td>
 </tr>
-</table>
+</tbody></table>
 
 
 
-<h3><a name="Quartz1.4.4-Changelog">Changelog</a></h3>
+<h3><a name="Quartz1.4.4-Changelog"></a>Changelog</h3>
 
-<p>
+<p><a name="jiraissues">
     <table  width="100%" cellspacing="0" class="grid">
         <tr>
             <th colspan="3" style="text-align: left;">
-                <a href="http://jira.opensymphony.com/secure/IssueNavigator.jspa?&pid=10060&fixfor=21440&sorter/field=issuekey&sorter/order=DESC&tempMax=25&reset=true&">OpenSymphony JIRA</a>
-                <span class="smalltext">(15 issues)</span>
+                                    <a href="/spaces/doexportspace.action?key=QRTZ1&macro.refresh=true#jiraissues"><img src="/images/icons/refresh_16.png" height="16" width="16" border="0" align="right" title="refresh"/></a>
+                                <a href="http://jira.opensymphony.com/secure/IssueNavigator.jspa?&pid=10060&fixfor=21440&sorter/field=issuekey&sorter/order=DESC&tempMax=25&reset=true&">OpenSymphony JIRA</a>
+                <span class="smalltext">(14 issues)</span>
             </th>
         </tr>
         <tr>
                     </tr>
                                             <tr class="rowNormal">
                                                             <td nowrap="true">
-                                            <a href="http://jira.opensymphony.com/browse/QUARTZ-217"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
-                                    </td>
-                                <td nowrap="true">
-                                            <a href="http://jira.opensymphony.com/browse/QUARTZ-217">QUARTZ-217</a>
-                                    </td>
-                                <td >
-                                            <a href="http://jira.opensymphony.com/browse/QUARTZ-217">CLONE -java.lang.StringIndexOutOfBoundsException in CronTrigger class</a>
-                                    </td>
-                            </tr>
-                                    <tr class="rowAlternate">
-                                                            <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-126"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                 <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-126">Incorrect handling of triggers in RAMJobStore.</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-125"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-125">scheduler takes 100% CPU at startup</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-124"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-124">SimpleTrigger.SetRepeatInterval javadoc comment is incorrect</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-123"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-123">Compatibility with Weblogic 8.1 and Oracle Thin JDBC Driver</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-121"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-121">java.lang.StringIndexOutOfBoundsException in CronTrigger class</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-120"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-120">can't instantiate MonthlyCalendar</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-118"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-118">potential CronTrigger NullPointerException</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-116"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-116">QRTZ_TRIGGERS / IS_VOLATILE / Postgres 8.0 typing</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-110"><img src="http://jira.opensymphony.com/images/icons/improvement.gif" alt="Improvement" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-110">The StdScheduler/QuartzInitializerServlet should try to load config from Classloader</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-108"><img src="http://jira.opensymphony.com/images/icons/improvement.gif" alt="Improvement" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-108">EJBInvokerJob: getInitialContext without parameters</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-106"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-106">RAMJobStore Trigger deletion infinite loop in acquireNextTrigger</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-105"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-105">(reopen) JobSchedulingDataProcessor causes exception for files not in classpath</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-103"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-103">JobInitializationPlugin starting second Scheduler</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-53"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>

File docs/wikidocs/Quartz 1.4.5.html

 	    <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
 		    <tr>
 			    <td valign="top" class="pagebody">
-				    <h2><a name="Quartz1.4.5-Quartz1.4.5ReleaseNotes">Quartz 1.4.5 Release Notes</a></h2>
+				    <h2><a name="Quartz1.4.5-Quartz1.4.5ReleaseNotes"></a>Quartz 1.4.5 Release Notes</h2>
 
-<h3><a name="Quartz1.4.5-KeyChanges">Key Changes</a></h3>
+<h3><a name="Quartz1.4.5-KeyChanges"></a>Key Changes</h3>
 <ul>
 	<li>JRE 1.5 Compatability fix (Quartz works with JDK 1.3.1, 1.4.x, and 1.5.x)</li>
 	<li>Various minor bug fixes (see change log)</li>
 </ul>
 
 
-<h3><a name="Quartz1.4.5-MigrationNotes">Migration Notes</a></h3>
+<h3><a name="Quartz1.4.5-MigrationNotes"></a>Migration Notes</h3>
 
-<table class='confluenceTable'>
+<table class='confluenceTable'><tbody>
 <tr>
 <th class='confluenceTh'> Version </th>
 <th class='confluenceTh'> Description </th>
 <td class='confluenceTd'>&nbsp;</td>
 <td class='confluenceTd'>&nbsp;</td>
 </tr>
-</table>
+</tbody></table>
 
 
 
-<h3><a name="Quartz1.4.5-Changelog">Changelog</a></h3>
+<h3><a name="Quartz1.4.5-Changelog"></a>Changelog</h3>
 
-<p>
+<p><a name="jiraissues">
     <table  width="100%" cellspacing="0" class="grid">
         <tr>
             <th colspan="3" style="text-align: left;">
-                <a href="http://jira.opensymphony.com/secure/IssueNavigator.jspa?&pid=10060&fixfor=21460&sorter/field=issuekey&sorter/order=DESC&tempMax=25&reset=true&">OpenSymphony JIRA</a>
-                <span class="smalltext">(12 issues)</span>
+                                    <a href="/spaces/doexportspace.action?key=QRTZ1&macro.refresh=true#jiraissues"><img src="/images/icons/refresh_16.png" height="16" width="16" border="0" align="right" title="refresh"/></a>
+                                <a href="http://jira.opensymphony.com/secure/IssueNavigator.jspa?&pid=10060&fixfor=21460&sorter/field=issuekey&sorter/order=DESC&tempMax=25&reset=true&">OpenSymphony JIRA</a>
+                <span class="smalltext">(13 issues)</span>
             </th>
         </tr>
         <tr>
                     </tr>
                                             <tr class="rowNormal">
                                                             <td nowrap="true">
+                                            <a href="http://jira.opensymphony.com/browse/QUARTZ-320"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
+                                    </td>
+                                <td nowrap="true">
+                                            <a href="http://jira.opensymphony.com/browse/QUARTZ-320">QUARTZ-320</a>
+                                    </td>
+                                <td >
+                                            <a href="http://jira.opensymphony.com/browse/QUARTZ-320">Getting Dead Lock in DB2</a>
+                                    </td>
+                            </tr>
+                                    <tr class="rowAlternate">
+                                                            <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-197"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                 <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-197">&quot;&lt;File 'jobs.xml' does not exist.&gt;  &amp;&amp; &lt;File 'C:\bea\user_projects\applications\test\TestWeb\WEB-INF\classes\jobs.xml' unchanged.&gt;</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-170"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-170">TriggerComparator compare() bug</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-153"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-153">JobSchedulingDataProcessor.DateConverter overrides other Converters</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-152"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-152">JobSchedulingDataProcessor Digester needs to setUseContextClassLoader(true)</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-144"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-144">JobInitializationPlugin with JDBCJobStore throws NullPointerException</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-141"><img src="http://jira.opensymphony.com/images/icons/bug.gif" alt="Bug" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-141">Failed to load ob_scheduling_data_1_1.xsd in Spring framework</a>
                                     </td>
                             </tr>
-                                    <tr class="rowNormal">
+                                    <tr class="rowAlternate">
                                                             <td nowrap="true">
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-136"><img src="http://jira.opensymphony.com/images/icons/improvement.gif" alt="Improvement" border="0" /></a>
                                     </td>
                                             <a href="http://jira.opensymphony.com/browse/QUARTZ-136">Two triggers of the same name+group cause  JobPersistenceException from jobInitializationPlugin</a>
                                     </td>
                             </tr>
-                                    <tr class="rowAlternate">
+                                    <tr class="rowNormal">
                                                             <td nowrap="true">