This is an automated email from the ASF dual-hosted git repository.
mattrpav pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq.git
The following commit(s) were added to refs/heads/main by this push:
new 9db69bc29 [AMQ-9323] Migration to jakarta-based jaxb
9db69bc29 is described below
commit 9db69bc2997c7e622fb992a9f8fa1281c2abb5e4
Author: Matt Pavlovich <[email protected]>
AuthorDate: Fri Oct 6 10:23:53 2023 -0500
[AMQ-9323] Migration to jakarta-based jaxb
---
activemq-osgi/pom.xml | 2 +-
activemq-runtime-config/pom.xml | 16 +++++++---------
.../plugin/DefaultConfigurationProcessor.java | 2 +-
.../activemq/plugin/RuntimeConfigurationBroker.java | 8 ++++----
.../jaxb2_commons/ElementAwareEqualsStrategy.java | 4 ++--
.../src/main/resources/binding.xjb | 4 ++--
activemq-web-console/pom.xml | 1 -
assembly/pom.xml | 19 +++++++------------
assembly/src/main/descriptors/common-bin.xml | 6 +++---
pom.xml | 17 +++++++++++------
10 files changed, 38 insertions(+), 41 deletions(-)
diff --git a/activemq-osgi/pom.xml b/activemq-osgi/pom.xml
index 506607297..14f8ceb66 100644
--- a/activemq-osgi/pom.xml
+++ b/activemq-osgi/pom.xml
@@ -165,7 +165,7 @@
sun.misc*;resolution:=optional,
sun.nio*;resolution:=optional,
sun.rmi*;resolution:=optional,
- javax.xml.bind*;version="[2,3)",
+ jakarta.xml.bind*;version="[3,5)",
javax.jmdns*;resolution:=optional,
javax.resource*;resolution:=optional,
javax.servlet*;resolution:=optional,
diff --git a/activemq-runtime-config/pom.xml b/activemq-runtime-config/pom.xml
index eaa96dd6c..8cd7a6b94 100644
--- a/activemq-runtime-config/pom.xml
+++ b/activemq-runtime-config/pom.xml
@@ -68,13 +68,13 @@
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
+ <groupId>jakarta.xml.bind</groupId>
+ <artifactId>jakarta.xml.bind-api</artifactId>
</dependency>
<dependency>
- <groupId>org.jvnet.jaxb2_commons</groupId>
- <artifactId>jaxb2-basics-runtime</artifactId>
- <version>${jaxb-basics-version}</version>
+ <groupId>org.jvnet.jaxb</groupId>
+ <artifactId>jaxb-plugins-runtime</artifactId>
+ <version>${jaxb-tools-version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
@@ -101,13 +101,11 @@
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
- <version>2.3.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.sun.istack</groupId>
<artifactId>istack-commons-runtime</artifactId>
- <version>3.0.7</version>
<scope>test</scope>
</dependency>
</dependencies>
@@ -117,7 +115,7 @@
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-xjc-plugin</artifactId>
- <version>3.3.2</version>
+ <version>4.0.0</version>
<executions>
<execution>
<id>compile-xsd</id>
@@ -129,7 +127,7 @@
</executions>
<configuration>
<extensions>
-
<extension>org.jvnet.jaxb2_commons:jaxb2-basics:${jaxb-basics-version}</extension>
+
<extension>org.jvnet.jaxb:jaxb-plugins:${jaxb-tools-version}</extension>
</extensions>
<xsdOptions>
<xsdOption>
diff --git
a/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/DefaultConfigurationProcessor.java
b/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/DefaultConfigurationProcessor.java
index b2f0d7e58..1b67864a0 100644
---
a/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/DefaultConfigurationProcessor.java
+++
b/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/DefaultConfigurationProcessor.java
@@ -21,7 +21,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import jakarta.annotation.PostConstruct;
-import javax.xml.bind.JAXBElement;
+import jakarta.xml.bind.JAXBElement;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.LinkedList;
diff --git
a/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/RuntimeConfigurationBroker.java
b/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/RuntimeConfigurationBroker.java
index 9d3c68f25..89addeb7c 100644
---
a/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/RuntimeConfigurationBroker.java
+++
b/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/RuntimeConfigurationBroker.java
@@ -24,10 +24,10 @@ import java.util.Properties;
import javax.management.JMException;
import javax.management.ObjectName;
import javax.xml.XMLConstants;
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.JAXBElement;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Unmarshaller;
+import jakarta.xml.bind.JAXBContext;
+import jakarta.xml.bind.JAXBElement;
+import jakarta.xml.bind.JAXBException;
+import jakarta.xml.bind.Unmarshaller;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
diff --git
a/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/jaxb2_commons/ElementAwareEqualsStrategy.java
b/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/jaxb2_commons/ElementAwareEqualsStrategy.java
index 46fd85046..3c4c28d7e 100644
---
a/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/jaxb2_commons/ElementAwareEqualsStrategy.java
+++
b/activemq-runtime-config/src/main/java/org/apache/activemq/plugin/jaxb2_commons/ElementAwareEqualsStrategy.java
@@ -16,8 +16,8 @@
*/
package org.apache.activemq.plugin.jaxb2_commons;
-import org.jvnet.jaxb2_commons.lang.JAXBEqualsStrategy;
-import org.jvnet.jaxb2_commons.locator.ObjectLocator;
+import org.jvnet.jaxb.lang.JAXBEqualsStrategy;
+import org.jvnet.jaxb.locator.ObjectLocator;
import org.w3c.dom.Element;
/**
diff --git a/activemq-runtime-config/src/main/resources/binding.xjb
b/activemq-runtime-config/src/main/resources/binding.xjb
index 2fd77395c..c8c69c3f7 100644
--- a/activemq-runtime-config/src/main/resources/binding.xjb
+++ b/activemq-runtime-config/src/main/resources/binding.xjb
@@ -15,8 +15,8 @@
limitations under the License.
-->
-<jxb:bindings version="2.0"
- xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
+<jxb:bindings version="3.0"
+ xmlns:jxb="https://jakarta.ee/xml/ns/jaxb"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<jxb:bindings
schemaLocation="../../../../activemq-spring/target/classes/activemq.xsd"
node="/xs:schema">
diff --git a/activemq-web-console/pom.xml b/activemq-web-console/pom.xml
index 522f71117..489a64531 100644
--- a/activemq-web-console/pom.xml
+++ b/activemq-web-console/pom.xml
@@ -132,7 +132,6 @@
<Import-Package>
org.xml.sax,
org.xml.sax.helpers,
- javax.xml.bind;version="[2,3)",
javax.xml.parsers,
javax.xml.stream,
javax.xml.transform,
diff --git a/assembly/pom.xml b/assembly/pom.xml
index 5244460b5..5fde4827f 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -128,9 +128,9 @@
<artifactId>activemq-runtime-config</artifactId>
</dependency>
<dependency>
- <groupId>org.jvnet.jaxb2_commons</groupId>
- <artifactId>jaxb2-basics-runtime</artifactId>
- <version>${jaxb-basics-version}</version>
+ <groupId>org.jvnet.jaxb</groupId>
+ <artifactId>jaxb-plugins-runtime</artifactId>
+ <version>${jaxb-tools-version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
@@ -441,29 +441,24 @@
<!-- JAXB/Activation/iStack -->
<dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- <version>2.2.11</version>
+ <groupId>jakarta.xml.bind</groupId>
+ <artifactId>jakarta.xml.bind-api</artifactId>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-core</artifactId>
- <version>2.2.11</version>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
- <version>2.2.11</version>
</dependency>
<dependency>
<groupId>com.sun.istack</groupId>
<artifactId>istack-commons-runtime</artifactId>
- <version>3.0.11</version>
</dependency>
<dependency>
- <groupId>javax.activation</groupId>
- <artifactId>javax.activation-api</artifactId>
- <version>1.2.0</version>
+ <groupId>jakarta.activation</groupId>
+ <artifactId>jakarta.activation-api</artifactId>
</dependency>
</dependencies>
diff --git a/assembly/src/main/descriptors/common-bin.xml
b/assembly/src/main/descriptors/common-bin.xml
index 9b2f298b9..013a0e8f9 100644
--- a/assembly/src/main/descriptors/common-bin.xml
+++ b/assembly/src/main/descriptors/common-bin.xml
@@ -145,11 +145,11 @@
<include>jakarta.transaction:jakarta.transaction-api</include>
<include>${pom.groupId}:activemq-web</include>
<include>org.fusesource.hawtbuf:hawtbuf</include>
- <include>javax.xml.bind:jaxb-api</include>
+ <include>jakarta.xml.bind:jaxb-api</include>
<include>org.glassfish.jaxb:jaxb-runtime</include>
<include>org.glassfish.jaxb:jaxb-core</include>
<include>com.sun.istack:istack-commons-runtime</include>
- <include>javax.activation:javax.activation-api</include>
+ <include>jakarta.activation:jakarta.activation-api</include>
<include>com.fasterxml.jackson.core:jackson-core</include>
<include>com.fasterxml.jackson.core:jackson-annotations</include>
<include>com.fasterxml.jackson.core:jackson-databind</include>
@@ -217,7 +217,7 @@
<include>org.jmdns:jmdns</include>
<include>org.apache.qpid:proton-j</include>
<include>${pom.groupId}:activemq-runtime-config</include>
- <include>org.jvnet.jaxb2_commons:jaxb2-basics-runtime</include>
+ <include>org.jvnet.jaxb:jaxb-plugins-runtime</include>
<!-- Apache Shiro dependencies: -->
<include>org.apache.shiro:shiro-core</include>
diff --git a/pom.xml b/pom.xml
index 5db39d3d6..d99cce31a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -69,6 +69,7 @@
<jackson-version>2.15.2</jackson-version>
<jakarta-jms-api-version>3.1.0</jakarta-jms-api-version>
<jasypt-version>1.9.3</jasypt-version>
+ <jaxb-version>4.0.2</jaxb-version>
<jaxb-bundle-version>2.3.2_1</jaxb-bundle-version>
<jetty11-version>11.0.17</jetty11-version>
<jetty-version>${jetty11-version}</jetty-version>
@@ -104,7 +105,7 @@
<xstream-version>1.4.20</xstream-version>
<xbean-version>4.23</xbean-version>
<xerces-version>2.12.2</xerces-version>
- <jaxb-basics-version>0.12.0</jaxb-basics-version>
+ <jaxb-tools-version>4.0.0</jaxb-tools-version>
<stompjms-version>3.1.0</stompjms-version>
<pax-logging-version>2.1.3</pax-logging-version>
@@ -863,6 +864,14 @@
<version>${xpp3-version}</version>
</dependency>
+ <dependency>
+ <groupId>org.glassfish.jaxb</groupId>
+ <artifactId>jaxb-bom</artifactId>
+ <version>${jaxb-version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-bom</artifactId>
@@ -986,11 +995,7 @@
<artifactId>org.apache.servicemix.bundles.josql</artifactId>
<version>${josql-version}</version>
</dependency>
- <dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- <version>2.3.1</version>
- </dependency>
+
<dependency>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>