diff --git a/src/main/java/org/codelibs/fess/app/web/admin/scheduler/AdminSchedulerAction.java b/src/main/java/org/codelibs/fess/app/web/admin/scheduler/AdminSchedulerAction.java index f54548b4e..dd87713ee 100644 --- a/src/main/java/org/codelibs/fess/app/web/admin/scheduler/AdminSchedulerAction.java +++ b/src/main/java/org/codelibs/fess/app/web/admin/scheduler/AdminSchedulerAction.java @@ -184,6 +184,7 @@ public class AdminSchedulerAction extends FessAdminAction { form.crudMode = crudMode; LaRequestUtil.getOptionalRequest().ifPresent(request -> { request.setAttribute("running", entity.isRunning()); + request.setAttribute("enabled", entity.isEnabled()); }); }).orElse(() -> { throwValidationError(messages -> messages.addErrorsCrudCouldNotFindCrudTable(GLOBAL, id), () -> asListHtml()); @@ -266,6 +267,11 @@ public class AdminSchedulerAction extends FessAdminAction { validate(form, messages -> {}, () -> asDetailsHtml(id)); verifyToken(() -> asDetailsHtml(id)); scheduledJobService.getScheduledJob(id).ifPresent(entity -> { + if(!entity.isEnabled()||entity.isRunning()){ + throwValidationError(messages -> { + messages.addErrorsFailedToStartJob(GLOBAL, entity.getName()); + }, () -> asDetailsHtml(id)); + } try { entity.start(); saveInfo(messages -> messages.addSuccessJobStarted(GLOBAL, entity.getName())); diff --git a/src/main/webapp/WEB-INF/view/admin/scheduler/admin_scheduler_details.jsp b/src/main/webapp/WEB-INF/view/admin/scheduler/admin_scheduler_details.jsp index cc01b9575..30da78a49 100644 --- a/src/main/webapp/WEB-INF/view/admin/scheduler/admin_scheduler_details.jsp +++ b/src/main/webapp/WEB-INF/view/admin/scheduler/admin_scheduler_details.jsp @@ -163,7 +163,7 @@ - +