diff --git a/spring-batch-core/.springBeans b/spring-batch-core/.springBeans
index 35d8dd4a0..681fc42dc 100644
--- a/spring-batch-core/.springBeans
+++ b/spring-batch-core/.springBeans
@@ -12,7 +12,6 @@
src/test/resources/org/springframework/batch/core/launch/support/test-environment.xml
src/test/resources/org/springframework/batch/core/launch/support/2jobs.xml
src/test/resources/org/springframework/batch/core/repository/dao/data-source-context.xml
- src/test/resources/org/springframework/batch/core/launch/support/job-with-environment.xml
src/test/resources/org/springframework/batch/core/launch/support/job2.xml
src/test/resources/org/springframework/batch/core/repository/dao/sql-dao-test.xml
src/test/resources/org/springframework/batch/core/launch/support/test-environment-with-registry.xml
diff --git a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistry.java b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistry.java
index df8e97ecd..ad6fa5406 100644
--- a/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistry.java
+++ b/spring-batch-core/src/main/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistry.java
@@ -20,6 +20,8 @@ import java.util.Arrays;
import java.util.Collection;
import java.util.List;
+import javax.print.attribute.standard.JobName;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.batch.core.Job;
@@ -79,6 +81,10 @@ public class ClassPathXmlJobRegistry implements ListableJobRegistry, Application
jobRegistry.register(jobFactory);
}
}
+
+ if (jobRegistry.getJobNames().isEmpty()) {
+ throw new NoSuchJobException("Could not locate any jobs in resources provided.");
+ }
}
diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryContextTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryContextTests.java
index 239962c8f..b45cac070 100644
--- a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryContextTests.java
+++ b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryContextTests.java
@@ -29,7 +29,7 @@ public class ClassPathXmlJobRegistryContextTests {
public void testLocateJob() throws Exception{
Collection names = registry.getJobNames();
- assertEquals(1, names.size());
+ assertEquals(2, names.size());
assertTrue(names.contains("test-job"));
Job job = registry.getJob("test-job");
diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryTests.java
index aa9415bde..9f0509a5d 100644
--- a/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryTests.java
+++ b/spring-batch-core/src/test/java/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryTests.java
@@ -7,7 +7,6 @@ import java.util.Collection;
import org.junit.Test;
import org.springframework.batch.core.Job;
-import org.springframework.batch.core.configuration.DuplicateJobException;
import org.springframework.batch.core.launch.NoSuchJobException;
import org.springframework.context.support.GenericApplicationContext;
import org.springframework.core.io.ClassPathResource;
@@ -59,7 +58,7 @@ public class ClassPathXmlJobRegistryTests {
registry.afterPropertiesSet();
}
- @Test(expected = DuplicateJobException.class)
+ @Test
public void testDuplicateJobsInFile() throws Exception {
Resource[] jobPaths = new Resource[] { new ClassPathResource(
@@ -69,5 +68,6 @@ public class ClassPathXmlJobRegistryTests {
applicationContext.refresh();
registry.setApplicationContext(applicationContext);
registry.afterPropertiesSet();
+ assertEquals(2, registry.getJobNames().size());
}
}
diff --git a/spring-batch-core/src/test/java/org/springframework/batch/core/launch/support/CommandLineJobRunnerTests.java b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/support/CommandLineJobRunnerTests.java
index b14774bfc..7f32347af 100644
--- a/spring-batch-core/src/test/java/org/springframework/batch/core/launch/support/CommandLineJobRunnerTests.java
+++ b/spring-batch-core/src/test/java/org/springframework/batch/core/launch/support/CommandLineJobRunnerTests.java
@@ -50,7 +50,7 @@ import org.springframework.util.ClassUtils;
public class CommandLineJobRunnerTests {
private String jobPath = ClassUtils.addResourcePathToPackagePath(CommandLineJobRunnerTests.class,
- "job-with-environment.xml");
+ "launcher-with-environment.xml");
private String jobName = "test-job";
diff --git a/spring-batch-core/src/test/resources/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryContextTests-context.xml b/spring-batch-core/src/test/resources/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryContextTests-context.xml
index 5ca45f129..1c3eabbf3 100644
--- a/spring-batch-core/src/test/resources/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryContextTests-context.xml
+++ b/spring-batch-core/src/test/resources/org/springframework/batch/core/configuration/support/ClassPathXmlJobRegistryContextTests-context.xml
@@ -4,7 +4,7 @@
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-
+
diff --git a/spring-batch-core/src/test/resources/org/springframework/batch/core/launch/support/job-with-environment.xml b/spring-batch-core/src/test/resources/org/springframework/batch/core/launch/support/launcher-with-environment.xml
similarity index 100%
rename from spring-batch-core/src/test/resources/org/springframework/batch/core/launch/support/job-with-environment.xml
rename to spring-batch-core/src/test/resources/org/springframework/batch/core/launch/support/launcher-with-environment.xml