diff --git a/org.springframework.orm/src/main/java/org/springframework/orm/hibernate4/LocalSessionFactoryBuilder.java b/org.springframework.orm/src/main/java/org/springframework/orm/hibernate4/LocalSessionFactoryBuilder.java index 4a94bdcd7a..23ace2b401 100644 --- a/org.springframework.orm/src/main/java/org/springframework/orm/hibernate4/LocalSessionFactoryBuilder.java +++ b/org.springframework.orm/src/main/java/org/springframework/orm/hibernate4/LocalSessionFactoryBuilder.java @@ -77,6 +77,7 @@ public class LocalSessionFactoryBuilder extends Configuration { /** * Create a new LocalSessionFactoryBuilder for the given DataSource. * @param dataSource the JDBC DataSource that the resulting Hibernate SessionFactory should be using + * (may be null) */ public LocalSessionFactoryBuilder(DataSource dataSource) { this(dataSource, new PathMatchingResourcePatternResolver()); @@ -85,6 +86,7 @@ public class LocalSessionFactoryBuilder extends Configuration { /** * Create a new LocalSessionFactoryBuilder for the given DataSource. * @param dataSource the JDBC DataSource that the resulting Hibernate SessionFactory should be using + * (may be null) * @param classLoader the ClassLoader to load application classes from */ public LocalSessionFactoryBuilder(DataSource dataSource, ClassLoader classLoader) { @@ -94,11 +96,14 @@ public class LocalSessionFactoryBuilder extends Configuration { /** * Create a new LocalSessionFactoryBuilder for the given DataSource. * @param dataSource the JDBC DataSource that the resulting Hibernate SessionFactory should be using + * (may be null) * @param classLoader the ResourceLoader to load application classes from */ public LocalSessionFactoryBuilder(DataSource dataSource, ResourceLoader resourceLoader) { getProperties().put(Environment.CURRENT_SESSION_CONTEXT_CLASS, SpringSessionContext.class.getName()); - getProperties().put(Environment.DATASOURCE, dataSource); + if (dataSource != null) { + getProperties().put(Environment.DATASOURCE, dataSource); + } getProperties().put("hibernate.classLoader.application", resourceLoader.getClassLoader()); this.resourcePatternResolver = ResourcePatternUtils.getResourcePatternResolver(resourceLoader); }