title: Asynchronous Scheduling in Java using Quartz
body: <p>I need a mechanism for implementing asynchronous job scheduling in Java and was looking at the <a href="http://quartz-scheduler.org/" rel="nofollow">Quartz Scheduler</a>, but it seems that it does not offer the necessary functionality.</p>
  
  <p>More specifically, my application, which runs across different nodes, has a web-based UI, via which users schedule several different jobs. When a job is completed (sometime in the future), it should report back to the UI, so that the user is informed of its status. Until then, the user should have the option of editing or cancelling a scheduled job.</p>
  
  <p>An implementation approach would be to have a Scheduler thread running constantly in the background in one of the nodes and collecting JobDetail definitions for job execution.</p>
  
  <p>In any case, there are two the questions (applicable for either a single-node or multi-node scenario):</p>
  
  <ol>
  <li>Does Quartz allow a modification or a cancellation of an already scheduled job?</li>
  <li>How can a "callback" mechanism be implemented so that a job execution result is reported back to the UI?</li>
  </ol>
  
  <p>Any code examples, or pointers, are greatly appreciated.</p>