Rééchelonnement d'un CronTriggerBean de façon dynamique avec les mêmes détails de l'emploi au Printemps
Ma tâche est de générer des rapports de manière dynamique à l'heure prévue spécifiée par l'utilisateur à partir de l'interface graphique.
Je suis en utilisant le code suivant dans le contexte de l'application de ma demande au printemps afin de générer le rapport quotidien de 6 A. M..
<bean name="scheduleRptJob" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass" value="com.secant.qatool.report.scheduler.ScheduleCroneJob"/>
</bean>
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="scheduleRptJob" />
<bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTrigger"/>
</list>
</property>
</bean>
Je suis l'évolution de l'expression cron dynamiquement à partir de la manette avec le code suivant. Mais ça ne fonctionne pas.
String time[] = rptScheduleTime.split(":");
String hours = time[0];
String minutes = time[1];
String croneExp = " 00 " + minutes + " " + hours + " * * ? ";
log.debug("CRONE EXP :: " + croneExp);
cronTrigger.clearAllTriggerListeners();
//Setting the crown expression.
cronTrigger.setCronExpression(croneExp);
Trigger[] triggers = {cronTrigger};
//Code to pause and start the cron trigger.
schedulerFactory.stop();
schedulerFactory.setTriggers(triggers);
schedulerFactory.start();
Quelqu'un pourrait s'il vous plaît aider moi comment remettre le même travail avec la dynamique du temps.
Merci,
-Anil Kumar.C
OriginalL'auteur Anil Kumar C | 2011-01-24
Vous devez vous connecter pour publier un commentaire.
il y a un thread dans le forum du printemps à ce sujet, et il semble qu'ils ont trouvé une solution à votre problème: http://forum.springsource.org/showthread.php?t=31736
mais au lieu de modifier manuellement l'expression cron dans le fichier, vous pouvez utiliser le printemps langage d'expression de lire à chaque fois à partir de votre objet le maintien de la valeur.
OriginalL'auteur guido
J'ai trouvé cette thread où ils lisent un cron expr de DB, puis de reporter le travail. Vous ne lisez pas de DB, mais passer directement à partir de l'interface graphique que vous voulez.
OriginalL'auteur Foyta