diff --git a/core/src/main/java/org/springframework/batch/core/domain/JobInstance.java b/core/src/main/java/org/springframework/batch/core/domain/JobInstance.java index cea38fe75..8e8435592 100644 --- a/core/src/main/java/org/springframework/batch/core/domain/JobInstance.java +++ b/core/src/main/java/org/springframework/batch/core/domain/JobInstance.java @@ -101,9 +101,10 @@ public class JobInstance extends Entity { return identifier==null ? null : identifier.getName(); } - /* (non-Javadoc) - * @see org.springframework.batch.core.domain.Entity#toString() - */ + public JobExecution createNewJobExecution() { + return new JobExecution(this); + } + public String toString() { return super.toString()+", identifier=["+identifier+"]"; } diff --git a/execution/src/main/java/org/springframework/batch/execution/launch/SimpleJobExecutorFacade.java b/execution/src/main/java/org/springframework/batch/execution/launch/SimpleJobExecutorFacade.java index 115a8cae4..af87584cd 100644 --- a/execution/src/main/java/org/springframework/batch/execution/launch/SimpleJobExecutorFacade.java +++ b/execution/src/main/java/org/springframework/batch/execution/launch/SimpleJobExecutorFacade.java @@ -164,7 +164,7 @@ class SimpleJobExecutorFacade implements JobExecutorFacade, JobInstance job = jobRepository.findOrCreateJob(jobConfiguration, jobIdentifier); - JobExecution execution = new JobExecution(job); + JobExecution execution = job.createNewJobExecution(); // Save the JobExecution so that it picks up an ID (useful for clients // monitoring asynchronous executions):