Job em loop

4 respostas
V

E ae, pessoal!

Seguinte… To usando o Quartz na minha aplicação. Fiz um Listener, declarei no web.xml, job, trigger, etc…
Tudo ok!

O problema é que, quando bate o horário do meu job, ele dispara e não pára mais. Ele precisa mandar 3 e-mail e acaba enviando 500, 1000…

Tentei consultar o site do Quatz, mas ele está fora do ar dede ontem.

Queria pesquisar o método shutdown, mas, pelo que li bem rapidamente, parece que não é o meu caso.
Alguém?

Abraço!

4 Respostas

Thishinoda

Provavelmente a definição do seu job está errada. Posta aí como está declarado o job e como você quer que ele se comporte (1 vez por dia? 3 vezes por dia? De X em X horas? etc…).

Thishinoda

Ah, tem esse site aqui também: http://www.cronmaker.com/
É um gerador de expressão cron “user friendly”

V

Meu Scheduler

<a class="mention" href="/u/override">@Override</a>

public void contextInitialized(ServletContextEvent arg0) {

if(this.montaTrigger() != null){	

try{

SchedulerFactory sf = new StdSchedulerFactory();

sched     = sf.getScheduler();
JobDetail job = JobBuilder.newJob(EmailContasAPagarJob.class).withIdentity("aPagar", "grupo1").build();
  		Trigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger", "grupo1")
  				.withSchedule(CronScheduleBuilder.cronSchedule(this.montaTrigger())).build(); //"* 34 21 * * ?"
  		
  		job.getJobDataMap().put("escritorioDao", escritorioDao);
  		job.getJobDataMap().put("aPagarDao", aPagarDao);
  		job.getJobDataMap().put("configDao", configDao);
  		
  		sched.scheduleJob(job, trigger);
  		sched.start();
  		
  	}catch(Exception e){
  		e.printStackTrace(); 
  	}
  }

}

Meu Cron é "* 34 21 * * ? - Neste exemplo, ele executa o job as 21:34.
Meu job são 3 e-mails. O problema é que ele fica num loop infinito… Manda os 3, depois mais 3, mais 3…

V

Grande Thiago!

Que ferramente irada! Já vi que minha expressão tava errada!
Acho que agora vai! Vou fazer o teste e posto aqui!

Abraço e obrigado!

Criado 24 de março de 2016
Ultima resposta 24 de mar. de 2016
Respostas 4
Participantes 2