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() {