|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Oct 2013
Messaggi: 18
|
[JAVA] creare uno schedulatore
buon giorno ragazzi,
avrei la necessità di implementare uno schedulatore in java (possibilmente un file jar runnable) ho trovato questo esempio: import org.quartz.impl.*; import org.quartz.*; import java.util.*; /** * * @author Federico */ public class PrimoEsempio { public static void main(String a[]) throws Exception { SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory(); Scheduler sched = schedFact.getScheduler(); sched.start(); JobDetail jobDetail = new JobDetail("myJob",sched.DEFAULT_GROUP,SimpleJob.class); SimpleTrigger trigger = new SimpleTrigger("myTrigger",sched.DEFAULT_GROUP,new Date(),null,0,0L); sched.scheduleJob(jobDetail, trigger); Thread.currentThread().sleep(4000); sched.shutdown(); } } ---------------------------------------------------------------- public class SimpleJob { /** Creates a new instance of SimpleJob */ public SimpleJob() { } public void execute(JobExecutionContext context) throws JobExecutionException { try { // Descrizione del trigger che ha avviato questo Job System.out.println(context.getTrigger().getDescription()); // Tempo di partenza del Job System.out.println(context.getFireTime()); // Nome del JobDetail System.out.println(context.getJobDetail().getFullName()); // Descrizione del JobDetail System.out.println(context.getJobDetail().getDescription()); // Data della precedente partenza di questo Job System.out.println(context.getPreviousFireTime()); // Data della prossima partenza per questo Job System.out.println(context.getNextFireTime()); System.out.println("SimpleJob in esecuzione."); // Settaggio del risultato ottenuto da questo Job context.setResult("Sono riuscito a scrivere"); } catch(Exception e) { context.setResult("Errore nell'esecuzione :"+e.toString()); } // Stampa del risultato a schermo System.out.println(context.getResult()); } } ----------------------------------------------------------------------- mi da il seguente errore: log4j:WARN No appenders could be found for logger (org.quartz.simpl.SimpleThreadPool). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. Exception in thread "main" java.lang.IllegalArgumentException: Job class must implement the Job interface. at org.quartz.JobDetail.setJobClass(JobDetail.java:257) at org.quartz.JobDetail.<init>(JobDetail.java:123) at PrimoEsempio.main(PrimoEsempio.java:20) ADESSO MI CHIEDO.. ma la libreria quartz funziona solo con spring o maven? ragazzi per favore aiutatemi. Magari può tornar utile anche ad altri grazie mille in anticipo |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
Il messaggio di errore mi sembra piuttosto chiaro.
Codice:
Job class must implement the Job interface. |
![]() |
![]() |
![]() |
#3 |
Junior Member
Iscritto dal: Oct 2013
Messaggi: 18
|
Ho risolto così:
SimpleTrigger st=new SimpleTrigger("mytrigger",sched.DEFAULT_GROUP,new Date(), null,SimpleTrigger.REPEAT_INDEFINITELY,600L*1000L); ho aggiunto alla chiamata del motodo SimpleTrigger da decorrenza del tempo " SimpleTrigger.REPEAT_INDEFINITELY,600L*1000L)" -- ogni 10 minuti e funge.. Grazie |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:53.