我已经开始使用我的工作jobLauncher.run(processJob,jobParameters);
,当我尝试使用另一个请求停止工作时,jobOperator.stop(jobExecution.getId());
得到异常:
org.springframework.batch.core.launch.JobExecutionNotRunningException:JobExecution 必须正在运行才能停止
Set<JobExecution> jobExecutionsSet= jobExplorer.findRunningJobExecutions("processJob");
for (JobExecution jobExecution:jobExecutionsSet) {
System.err.println("job status : "+ jobExecution.getStatus());
if (jobExecution.getStatus()== BatchStatus.STARTED|| jobExecution.getStatus()== BatchStatus.STARTING || jobExecution.getStatus()== BatchStatus.STOPPING){
jobOperator.stop(jobExecution.getId());
System.out.println("###########Stopped#########");
}
}
当打印作业状态总是得到 job status : STOPPING
但批处理作业正在运行时
它的网络应用程序,首先上传一些CSV文件并使用spring批处理开始一些操作,在此执行期间如果用户需要停止然后停止来自另一个控制器方法的请求并尝试停止运行作业
请帮我停止运行工作