diff --git a/spring-modulith-events/spring-modulith-events-jdbc/pom.xml b/spring-modulith-events/spring-modulith-events-jdbc/pom.xml
index 18076d24..086b5221 100644
--- a/spring-modulith-events/spring-modulith-events-jdbc/pom.xml
+++ b/spring-modulith-events/spring-modulith-events-jdbc/pom.xml
@@ -59,6 +59,18 @@
spring-boot-starter-jdbc
test
+
+
+ org.springframework
+ spring-web
+ test
+
+
+
+ jakarta.servlet
+ jakarta.servlet-api
+ test
+
diff --git a/spring-modulith-events/spring-modulith-events-jdbc/src/main/java/org/springframework/modulith/events/jdbc/DatabaseSchemaInitializer.java b/spring-modulith-events/spring-modulith-events-jdbc/src/main/java/org/springframework/modulith/events/jdbc/DatabaseSchemaInitializer.java
index d2f92bbd..98476308 100644
--- a/spring-modulith-events/spring-modulith-events-jdbc/src/main/java/org/springframework/modulith/events/jdbc/DatabaseSchemaInitializer.java
+++ b/spring-modulith-events/spring-modulith-events-jdbc/src/main/java/org/springframework/modulith/events/jdbc/DatabaseSchemaInitializer.java
@@ -62,7 +62,7 @@ class DatabaseSchemaInitializer implements InitializingBean {
public void afterPropertiesSet() {
var schemaResourceFilename = databaseType.getSchemaResourceFilename();
- var schemaDdlResource = resourceLoader.getResource("classpath:" + schemaResourceFilename);
+ var schemaDdlResource = resourceLoader.getResource(ResourceLoader.CLASSPATH_URL_PREFIX + schemaResourceFilename);
var schemaDdl = asString(schemaDdlResource);
jdbcOperations.execute(schemaDdl);
diff --git a/spring-modulith-events/spring-modulith-events-jdbc/src/test/java/org/springframework/modulith/events/jdbc/DatabaseSchemaInitializerUnitTests.java b/spring-modulith-events/spring-modulith-events-jdbc/src/test/java/org/springframework/modulith/events/jdbc/DatabaseSchemaInitializerUnitTests.java
new file mode 100644
index 00000000..8d2dd748
--- /dev/null
+++ b/spring-modulith-events/spring-modulith-events-jdbc/src/test/java/org/springframework/modulith/events/jdbc/DatabaseSchemaInitializerUnitTests.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright 2023 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.springframework.modulith.events.jdbc;
+
+import static org.assertj.core.api.Assertions.*;
+import static org.mockito.ArgumentMatchers.*;
+import static org.mockito.Mockito.*;
+
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.core.io.ResourceLoader;
+import org.springframework.jdbc.core.JdbcOperations;
+
+/**
+ * Unit tests for {@link DatabaseSchemaInitializer}.
+ *
+ * @author Oliver Drotbohm
+ */
+@ExtendWith(MockitoExtension.class)
+class DatabaseSchemaInitializerUnitTests {
+
+ @Mock JdbcOperations jdbcOperations;
+ @Mock ResourceLoader resourceLoader;
+
+ @Test // GH-159
+ void loadsSchemaFilesFromClasspath() {
+
+ when(resourceLoader.getResource(any())).thenAnswer(it -> {
+ return new ClassPathResource(it. getArgument(0).substring(ResourceLoader.CLASSPATH_URL_PREFIX.length()));
+ });
+
+ var initializer = new DatabaseSchemaInitializer(jdbcOperations, resourceLoader, DatabaseType.H2);
+ var captor = ArgumentCaptor.forClass(String.class);
+
+ assertThatNoException().isThrownBy(initializer::afterPropertiesSet);
+ verify(resourceLoader).getResource(captor.capture());
+ assertThat(captor.getValue()).startsWith(ResourceLoader.CLASSPATH_URL_PREFIX);
+ }
+}