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 @@
-
+
">