That of course, if you want to use Spring on your application. Why
introduce another dependency for something so simple as creating a
singleton? Besides then you will have to keep/maintain another XML file.

Ernesto

Michael O'Cleirigh wrote:
> Hello,
>
> Spring ships with a FactoryBean for the Scheduler
> see
> http://static.springframework.org/spring/docs/2.5.x/reference/scheduling.html#scheduling-quartz
>
>
> I guess it depends on the persistence strategy your jobs have but it
> could be as easy as injecting the spring managed scheduler bean
> into your wicket pages and adding in the triggers/job detail directly
> to that instance.
>
> Mike
>>
>> Maybe this is more question for the quartz mailing list....
>>
>> Probably you would want to have only one scheduler per application, so
>> you should follow a singleton pattern. E.g.
>>
>> public class SchedulerLocator {
>>
>>        private static Scheduler scheduler;
>>
>>        public static Scheduler getScheduler() {
>>            if(scheduler == null) {
>>                  scheduler = .....all the factory thing.
>>            }
>>           return scheduler;
>>        }
>>
>> }
>>
>> So everywhere you could do  SchedulerLocator.getScheduler() (e.g on you
>> pages). I would "create" this singleton when the  application object is
>> created or initialized.
>>
>> init() {
>>    SchedulerLocator.getScheduler();
>> }
>>
>> If you want your jobs/triggers to persist after application restarts you
>> will need to create a "persistent" scheduler and consequently create the
>> associated tables and instruct quartz to deal with them...
>>
>> Ernesto
>>  
>> wfroud wrote:
>>  
>>> Hi,
>>>
>>> I am trying to integrate a scheduler into my web application. I
>>> believe my
>>> question is probably very trivial but I am missing some vital Java
>>> knowledge. Please let me explain… My web application currently
>>> allows users to choose, customise and run
>>> reports.
>>> I now need to add a detailed scheduler so that users can choose when
>>> to run
>>> the reports and how often etc.
>>>
>>> I'm using Spring for the db access, and I was going to use Quartz for
>>> scheduling.
>>>
>>> A basic Quartz schedule looks something like the following:
>>> public class SimpleExample {
>>>         public void run() throws Exception {
>>>  
>>>         // First we must get a reference to a scheduler
>>>         // This schedule info is  stored in a db, defined in the
>>> quartz.properties file.
>>>         SchedulerFactory sf = new StdSchedulerFactory();
>>>         Scheduler sched = sf.getScheduler();
>>>  
>>>         // Add jobs and triggers to schedule.
>>>  
>>>         // Start up the scheduler (nothing can actually run until
>>> the         // scheduler has been started)
>>>         sched.start();
>>>  
>>>         // Wait for a short period of time so scheduler has chance
>>> to run
>>> jobs.
>>>  
>>>          sched.shutdown();
>>>     }
>>>  
>>>     public static void main(String[] args) throws Exception {
>>>  
>>>         SimpleExample example = new SimpleExample();
>>>         example.run();
>>>  
>>>     }
>>>  
>>> }
>>>
>>> More details about a really basic example can be found here:
>>> http://wiki.opensymphony.com/display/QRTZ1/TutorialLesson1
>>>
>>> I can run this fine as a standalone test.
>>>
>>> The basics of my web application are as follows:
>>>
>>> MyApp which extends WebApplication.
>>> Loads of classes which extend WebPage
>>> A MySession class which extends WebSession
>>>
>>> What I'm not sure about is where I should be instantiating the
>>> SchedulerFactory within my application so that all users can update any
>>> schedule (i.e. so there is kind-of-like global access to the scheduler
>>> object) and so that the SchedulerFactory is only instantiated the once.
>>>
>>> I can't instantiate it in a web page as this will be user specific.
>>> I could instantiate it in the MyApp class but then I don't have
>>> access to it
>>> from the web pages.
>>>
>>> Any help whatsoever, just to point me in the right direction, would
>>> be much
>>> appreciated.
>>>
>>> Thanks
>>>
>>> Will
>>>
>>>       
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>>
>>   
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to