Quartz

Quartz est un ensemble de classe Java qui offre des fonctions d’ordonnancement. Le produit est Open source même pour les applications commerciales, cela vaut la peine de s’y intéresser car c’est la seule initiative de ce genre.
Il ne peut être considéré comme un ordonnanceur en tant que tel puiqu’il faut un minimum de développement pour l’utiliser mais il peut être pratique pour tout nouveau projet.
Une release mensuel indique une bonne activité du projet.
- Sortie de Quartz 1.5.0
Quartz continue de développer sa solution de planification Java, cette nouvelle version passe en licence Apache 2.0. Ce produits est pour les développeurs et les améliorations concernent donc principalement la partie développement, on notera toutefois le support de nouvelles bases de données : Derby et DB2.
Rubriques
Interface web
La partie qui manquait à Quartz est en cours de dévelloppement : l’interface. on reste dans l’esprit Java avec une architecture Tomcat.
- Installation
Le produit étant tout jeune, l’installation proposée est réalisée avec les dernieres mises à jour des différents composants.
Le pré-requis est un serveur Tomcat en état de marche.
- Ecrans
Aperçu rapide des écrans fournis.
Langages |
|---|
Dernières infos
- Quartz 1.3.1 Released
Quartz 1.3.1 Released
SourceForge.net : SF.net Project News : Quartz Enterprise Job Scheduler (including full news text)
- Quartz 1.3.2 Released
Quartz is an enterprise-class Job Scheduler for use in stand-alone and full-blown J2EE Applications.<br /><br />Quartz is very light-weight, highy scalable, and extremely easy to use within your own applications.<br /><br /><br /><br />================================================================================<br />Quartz 1.3.1 Release Notes<br />================================================================================<br /><br />This is release contains a few small bug fixes, and a couple new features.<br /><br /><br /><br />================================================================================<br />Changes in version 1.3.2 (since version 1.3.1 - see changes since 1.2.3 below)<br />================================================================================<br /><br />1- Added new method to the Scheduler interface: <br /><br /> rescheduleJob(String triggerName, String groupName, Trigger newTrigger)<br /><br />2- Added new org.quartz.jobs.ee.jmx.JMXInvokerJob - which invokes an MBean as<br /> configured.<br /> <br />3- Fixed a couple problems in the tutorial.<br /><br />4- Fixed the build process (java mail JAR was missing).<br /><br />5- Fixed bug with CronTrigger with specifying a day of week along with the "L"<br /> modifier, when the day of week is abreviated, rather than specified by number<br /> (i.e. "FRIL" would not work, but "6L" would).<br /> <br />6- Fixed a bug with resuming triggers that have no next-fire time (they are not<br /> scheduled to fire again).<br /> <br />7- Fixed a few type-o's and copy-paste bugs in SendMailJob.<br /><br />8- Fixed case-sensitivity issues in the Sybase create tables script.<br /><br />9- Fixed missing drop-table command in MS SQLServer create tables script.<br /><br />10- Fixed a bug in SimpleTrigger.getFireTimeAfter(Date) where with non-repeating<br /> configurations of the trigger when the given date was exactly equal to the<br /> trigger's start time, the start time could be returned, rather than null.<br /> <br />11- Fix possible NPE in the Cloudscape database delegate.
- Quartz 1.3.3 Released
Available in the files section.
- Management WebApp 1.0-Beta3 Released
The web application is now completely converted to WebWork 2.<br /><br />...find it in the files section.
- Quartz 1.4.0 released
Quartz is an enterprise-class Job Scheduler for use in stand-alone and full-blown J2EE Applications. Quartz is very light-weight, highy scalable, and extremely easy to use within <br />your own applications.<br /><br /><br /><br />================================================================================<br />Quartz 1.4.0 Release Notes<br />================================================================================<br /><br />This is release contains feature enhancements, performance improvments, and<br />bug fixes. There are a few backward compatibility issues that you should pay<br />attention to, which are listed in the change-list.<br /><br />Special thanks to Chris Bonham for the work he did on this release.<br /><br /><br />* Take special of the changes that created backward-incompatibilities: <br /> * #3 (xml files)<br /> * #6 (trigger listeners, job listeners)<br /> * #10 (history plugins)<br /> * #11 (add calendar)<br /> * #13 (trigger states)<br /><br /><br />================================================================================<br />Changes in version 1.4.0 (since version 1.3.4)<br />================================================================================<br /><br />1- Performance improvements with JDBC-JobStore when storing and updating <br /> triggers. <br /> <br />2- Misc small bug fixes and documentation improvements.<br /> Notable fixes:<br /> - Fixed a bug with scheduler.getTriggerState() when using RAMJobStore.<br /> - Fixed a bug CronTrigger.willFireOn(..) not working properly when cron<br /> expression included a day-of-week clause<br /> - Fixed a bug with triggers where if you set the end-time before setting <br /> the start-time it was possible to specify an end-time that occurred <br /> before the start-time.<br /> - Fixed a bug related to recovery of StatefulJobs - triggers could get<br /> 'stuck' in the BLOCKED state.<br /> - Fixed a bug related to recovery of StatefulJobs - triggers that have<br /> no more fire times, and don't request recovery could get recovered <br /> anyway.<br /> - Fixed 'noisy-ness' of ClusterManager and MisfireHandler (of <br /> JDBC-JobStore) when the db connection is lost. (they now pause for the <br /> interval specified in the configuration property <br /> 'org.quartz.scheduler.dbFailureRetryInterval')<br /> - Fixed a bug with paused trigger groups that have no triggers in them -<br /> the first trigger added with that group after a restart would not end<br /> up paused.<br /><br />3- Overhaul of XML support for initializing jobs and triggers from an XML file.<br /> This includes new capabilities for populating the JobDataMap, support for<br /> multiple triggers per job, and other improvements.<br /> <br /> JobInitializationPlugin was updated to include specifying a "scan interval"<br /> at which the job config (xml) file will be periodically scanned for updates.<br /> <br /> <br />4- New CronTrigger feature: 'W' character for day-of-month expression. The 'W'<br /> character signifies nearest weekday. As examples, if the day-of-week <br /> expression is 15W and the 15th of the month is a Saturday, then the trigger<br /> will occur on Friday, but if the 15th is a Sunday, the trigger will occur<br /> on Monday. <br /> <br /> This new character can also be specified in conjunction with the 'L' <br /> character (last day of month), thus the value 'LW' for day-of-month means<br /> last weekday of the month. Likewise, "1W" is first weekday of the month.<br /> <br />5- Add new convenience feature Scheduler.getPausedTriggerGroups() which returns<br /> a set of names for the trigger groups that are currently paused.<br /> <br />6- Added new mechanism for TriggerListeners to "veto" the execution of a Job<br /> (keep the job from being executed during this firing of the trigger).<br /> See new method "vetoJobExecution(..)" on the TriggerListener interface.<br /><br /> In conjunction with this change, JobListeners now receive the new event<br /> call-back jobExecutionVetoed(..).<br /> <br />7- Added new (overloaded) version of CronTrigger.willFireOn(Calendar) with the<br /> new signature willFireOn(Calendar, boolean), If the new boolean parameter<br /> is set to true, the method will only determine if the trigger will fire <br /> during the day represented by the given Calendar (hours, minutes and seconds <br /> will be ignored).<br /> <br />8- Introduced new interface for jobs: InterruptableJob, providing a hook for<br /> requesting executed jobs to be interrupted. Please read the documentation<br /> on that interface, as well as the JavaDoc on the new Scheduler.interrupt(..)<br /> method.<br /> <br />9- Improved EJBInvokerJob so that you can specify JNDI configuration properties<br /> for locating the EJB.<br /> <br />10- Introduced new JobExecutionContext.set/getResult(). Jobs can set an object<br /> as the 'result' of their execution, and JobListeners and TriggerListeners<br /> can view the result. The result means nothing to Quartz itself. <br /> <br /> LoggingJobHistoryPluggin has been changed to include logging of the result.<br /> This change required creating an additional message to distinguish logging<br /> when there is a result, or when the job failed (threw a <br /> JobExecutionException). If you use LoggingJobHistoryPlugin, your <br /> configuration may need to change (if you customize the messages). At the<br /> minimum you should be aware that the logged messages are now a bit different.<br /> <br />11- Introduced new SimpleThreadPool config property that determines whether<br /> the thread pool's ThreadGoup is a child of the thread group of the<br /> initializing thread. The default value is "true" - which is what the<br /> behavior has always been.<br /> org.quartz.threadPool.threadsInheritGroupOfInitializingThread = true<br /> <br />12- Signature of Scheduler.addCalendar(Calendar, boolean) changed to <br /> Scheduler.addCalendar(Calendar, boolean, boolean) - where the second<br /> boolean specifies whether to update all existing triggers that reference<br /> the existing calendar to be 'correct' relative to the new Calendar.<br /> <br />14- Additional detail is now returned from the call Scheduler.getTriggerState(),<br /> specifically the state of "BLOCKED" is returned, rather than "NORMAL" when<br /> the trigger is in a state where it can't be fired because the associated<br /> job is a StatefulJob, and it is currently executing. If you had logic<br /> testing for the "NORMAL" state, you should review your logic for the<br /> handling of the possible new "BLOCKED" state.<br /> <br />15- Added ability to populate string name-value pairs into the scheduler context<br /> during initialization. The new config property prefix for doing this is<br /> 'org.quartz.context.key'. See the docs/config/example_quartz.properties <br /> file for more detail.
A voir sur le net
- Job scheduling with Quartz
Article IBM sur l’ordonnancement avec Quartz.
- Quartz.NET - Enterprise Job Scheduler for .NET Platform
Quartz.NET is a port of Java Quartz which is an enterprise class job sheduling system. Quartz.NET is a free open source tool that you can use in your .NET applications.
Article IBM sur l’ordonnancement avec Quartz.
Quartz.NET is a port of Java Quartz which is an enterprise class job sheduling system. Quartz.NET is a free open source tool that you can use in your .NET applications.










































Job-scheduling
Quartz
Sites connexes
SourceForge.net : SF.net Project News : Quartz Enterprise Job Scheduler (including full news text)
Licence
Partenariat
Rechercher
Recherche globale
Annonces
Mots clés