diff --git a/ebean-api/pom.xml b/ebean-api/pom.xml
index 29c2b192b..ce07ce21c 100644
--- a/ebean-api/pom.xml
+++ b/ebean-api/pom.xml
@@ -91,14 +91,6 @@
true
-
-
- org.glassfish.jaxb
- jaxb-runtime
- 2.3.2
- provided
-
-
diff --git a/ebean-api/src/main/java/io/ebean/config/ClassLoadConfig.java b/ebean-api/src/main/java/io/ebean/config/ClassLoadConfig.java
index e6b2fe652..78f5c903e 100644
--- a/ebean-api/src/main/java/io/ebean/config/ClassLoadConfig.java
+++ b/ebean-api/src/main/java/io/ebean/config/ClassLoadConfig.java
@@ -62,14 +62,6 @@ public class ClassLoadConfig {
return isPresent("javax.annotation.PostConstruct");
}
- /**
- * Return true if javax JAXB is present (maybe not in java9).
- * If not we don't try to parse or support 'extra ddl'.
- */
- public boolean isJavaxJAXBPresent() {
- return isPresent("javax.xml.bind.JAXBException");
- }
-
/**
* Return true if Jackson annotations like JsonIgnore are present.
*/
diff --git a/ebean-core/pom.xml b/ebean-core/pom.xml
index 10cea9a28..b35ed2e4b 100644
--- a/ebean-core/pom.xml
+++ b/ebean-core/pom.xml
@@ -54,6 +54,13 @@
12.4.1
test
+
+
+ org.glassfish.jaxb
+ jaxb-runtime
+ 2.3.2
+ test
+
io.ebean
@@ -112,14 +119,6 @@
true
-
-
- org.glassfish.jaxb
- jaxb-runtime
- 2.3.2
- provided
-
-
javax.annotation
javax.annotation-api
diff --git a/ebean-core/src/main/java/io/ebeaninternal/server/core/InternalConfiguration.java b/ebean-core/src/main/java/io/ebeaninternal/server/core/InternalConfiguration.java
index 1bd7eec7b..c1f392c2b 100644
--- a/ebean-core/src/main/java/io/ebeaninternal/server/core/InternalConfiguration.java
+++ b/ebean-core/src/main/java/io/ebeaninternal/server/core/InternalConfiguration.java
@@ -216,10 +216,6 @@ public class InternalConfiguration {
}
private List readExternalMapping() {
- //TODO: Remove the isJavaxJAXBPresent() check once this is external module
- if (!config.getClassLoadConfig().isJavaxJAXBPresent()) {
- return Collections.emptyList();
- }
final XmapService xmapService = config.service(XmapService.class);
if (xmapService == null) {
return Collections.emptyList();
diff --git a/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/DdlGenerator.java b/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/DdlGenerator.java
index c000df017..7dbf6c42e 100644
--- a/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/DdlGenerator.java
+++ b/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/DdlGenerator.java
@@ -60,7 +60,7 @@ public class DdlGenerator implements SpiDdlGenerator {
public DdlGenerator(SpiEbeanServer server) {
this.server = server;
final DatabaseConfig config = server.getServerConfig();
- this.jaxbPresent = config.getClassLoadConfig().isJavaxJAXBPresent();
+ this.jaxbPresent = Detect.isJAXBPresent(config);
this.generateDdl = config.isDdlGenerate();
this.extraDdl = config.isDdlExtra();
this.createOnly = config.isDdlCreateOnly();
diff --git a/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/Detect.java b/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/Detect.java
new file mode 100644
index 000000000..8a002f513
--- /dev/null
+++ b/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/Detect.java
@@ -0,0 +1,16 @@
+package io.ebeaninternal.dbmigration;
+
+import io.ebean.config.DatabaseConfig;
+
+/**
+ * Detect existence of JAXB
+ */
+public class Detect {
+
+ /**
+ * Return true if JAXB is present.
+ */
+ public static boolean isJAXBPresent(DatabaseConfig config) {
+ return config.getClassLoadConfig().isPresent("javax.xml.bind.JAXBException");
+ }
+}
diff --git a/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/model/CurrentModel.java b/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/model/CurrentModel.java
index e2eba3567..627fc6b3e 100644
--- a/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/model/CurrentModel.java
+++ b/ebean-ddlgen/src/main/java/io/ebeaninternal/dbmigration/model/CurrentModel.java
@@ -3,6 +3,7 @@ package io.ebeaninternal.dbmigration.model;
import io.ebean.config.DbConstraintNaming;
import io.ebean.config.dbplatform.DatabasePlatform;
import io.ebeaninternal.api.SpiEbeanServer;
+import io.ebeaninternal.dbmigration.Detect;
import io.ebeaninternal.dbmigration.ddlgeneration.DdlHandler;
import io.ebeaninternal.dbmigration.ddlgeneration.DdlOptions;
import io.ebeaninternal.dbmigration.ddlgeneration.DdlWrite;
@@ -66,7 +67,7 @@ public class CurrentModel {
this.databasePlatform = server.getDatabasePlatform();
this.constraintNaming = constraintNaming;
this.platformTypes = platformTypes;
- this.jaxbPresent = server.getServerConfig().getClassLoadConfig().isJavaxJAXBPresent();
+ this.jaxbPresent = Detect.isJAXBPresent(server.getServerConfig());
}
public DdlOptions getDdlOptions() {