diff --git a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/jobs/service/JobRegisterServiceImpl.java b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/jobs/service/JobRegisterServiceImpl.java index 3bd5b2fc2..fb9e1d8a1 100644 --- a/fineract-provider/src/main/java/org/apache/fineract/infrastructure/jobs/service/JobRegisterServiceImpl.java +++ b/fineract-provider/src/main/java/org/apache/fineract/infrastructure/jobs/service/JobRegisterServiceImpl.java @@ -230,17 +230,18 @@ public class JobRegisterServiceImpl implements JobRegisterService, ApplicationLi @Override public void scheduleJob(final ScheduledJobDetail scheduledJobDetails) { - if (!scheduledJobDetails.isActiveSchedular()) { - scheduledJobDetails.updateNextRunTime(null); - scheduledJobDetails.updateCurrentlyRunningStatus(false); - return; - } try { final JobDetail jobDetail = createJobDetail(scheduledJobDetails); + scheduledJobDetails.updateJobKey(getJobKeyAsString(jobDetail.getKey())); + if (!scheduledJobDetails.isActiveSchedular()) { + scheduledJobDetails.updateNextRunTime(null); + scheduledJobDetails.updateCurrentlyRunningStatus(false); + return; + } + final Trigger trigger = createTrigger(scheduledJobDetails, jobDetail); final Scheduler scheduler = getScheduler(scheduledJobDetails); scheduler.scheduleJob(jobDetail, trigger); - scheduledJobDetails.updateJobKey(getJobKeyAsString(jobDetail.getKey())); scheduledJobDetails.updateNextRunTime(trigger.getNextFireTime()); scheduledJobDetails.updateErrorLog(null); } catch (final Throwable throwable) {