Как отключить триггер для задания в кварцевом планировщике на Java? - PullRequest
0 голосов
/ 26 сентября 2019

Я пытаюсь отключить триггер для определенной работы, которую я создал в Кварце.У меня есть электронная почта, с которой связан триггер, запуск которого запланирован через два часа.jobGroup и jobName доступны для меня.jobName / jobId - это «28d5f25e-0669-4570-bdb2-b4e865fcdc02», а jobGroup - «работа по электронной почте».Клавиша триггера также кажется правильной.

String jobName = cancelEmailScheheduleRequest.get("jobName"); //correct
String jobGroup = cancelEmailScheheduleRequest.get("jobGroup"); //correct jobGroup
TriggerKey triggerKey = TriggerKey.triggerKey(jobName, jobGroup); // returns object {name: "4dc25e67-10fa-4e2b-8ca0-c91c024a9a05", group: "email-jobs"}
Map<String, String> response = new HashMap<>();
try {
    if (scheduler.checkExists(triggerKey)) { //returns false instead of true
        scheduler.unscheduleJob(triggerKey);
        response.put("message", "Email Unscheduled");
        return ResponseEntity.ok(response);
    } else {
        response.put("message", "No such Email to  Unschedule");
        return ResponseEntity.ok(response);
    }
} catch (SchedulerException e) {
    e.printStackTrace();
    response.put("message", "Some Error occurred");
    return ResponseEntity.ok(response);
}

Но строка scheduler.checkExists(triggerKey) возвращает FALSE, в то время как она должна возвращать true, и, таким образом, мой триггер не становится незапланированным.Таким образом, условие else выполняется и возвращается сообщение No such Email to Unschedule.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...