diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/xml/StepParserStepFactoryBean.java b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/xml/StepParserStepFactoryBean.java index 8868443d0..195eca54b 100644 --- a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/xml/StepParserStepFactoryBean.java +++ b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/xml/StepParserStepFactoryBean.java @@ -345,6 +345,7 @@ public class StepParserStepFactoryBean implements FactoryBean, BeanNameAwa if (commitInterval != null) { builder.chunk(commitInterval); } + builder.chunk(chunkCompletionPolicy); enhanceTaskletStepBuilder(builder); builder.reader(itemReader); diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/xml/StepParserStepFactoryBeanTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/xml/StepParserStepFactoryBeanTests.java index 5678cb4f7..8c02fe0bb 100644 --- a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/xml/StepParserStepFactoryBeanTests.java +++ b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/xml/StepParserStepFactoryBeanTests.java @@ -248,6 +248,10 @@ public class StepParserStepFactoryBeanTests { assertEquals(new Integer(10), throttleLimit); Object tasklet = ReflectionTestUtils.getField(step, "tasklet"); assertTrue(tasklet instanceof ChunkOrientedTasklet); + Object chunkProvider = ReflectionTestUtils.getField(tasklet, "chunkProvider"); + Object repeatOperations = ReflectionTestUtils.getField(chunkProvider, "repeatOperations"); + Object completionPolicy = ReflectionTestUtils.getField(repeatOperations, "completionPolicy"); + assertTrue(completionPolicy instanceof DummyCompletionPolicy); } @Test