Merge pull request #1064 from jbonofre/AMQ-9319

AMQ-9319: Upgrade to maven-war-plugin 3.4.0
diff --git a/activemq-jdbc-store/pom.xml b/activemq-jdbc-store/pom.xml
index 410c106..1e7a3c1 100644
--- a/activemq-jdbc-store/pom.xml
+++ b/activemq-jdbc-store/pom.xml
@@ -40,10 +40,6 @@
       <artifactId>activemq-broker</artifactId>
     </dependency>
     <dependency>
-      <groupId>javax.xml.bind</groupId>
-      <artifactId>jaxb-api</artifactId>
-    </dependency>
-    <dependency>
       <groupId>org.apache.derby</groupId>
       <artifactId>derby</artifactId>
       <optional>true</optional>
diff --git a/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/adapter/DefaultJDBCAdapter.java b/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/adapter/DefaultJDBCAdapter.java
index 031d976..47823ee 100644
--- a/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/adapter/DefaultJDBCAdapter.java
+++ b/activemq-jdbc-store/src/main/java/org/apache/activemq/store/jdbc/adapter/DefaultJDBCAdapter.java
@@ -16,9 +16,6 @@
  */
 package org.apache.activemq.store.jdbc.adapter;
 
-import static javax.xml.bind.DatatypeConverter.parseBase64Binary;
-import static javax.xml.bind.DatatypeConverter.printBase64Binary;
-
 import java.io.IOException;
 import java.sql.Connection;
 import java.sql.PreparedStatement;
@@ -26,6 +23,7 @@
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.util.ArrayList;
+import java.util.Base64;
 import java.util.HashSet;
 import java.util.LinkedList;
 import java.util.Set;
@@ -239,7 +237,7 @@
             if (xid != null) {
                 byte[] xidVal = xid.getEncodedXidBytes();
                 xidVal[0] = '+';
-                String xidString = printBase64Binary(xidVal);
+                String xidString = Base64.getEncoder().encodeToString(xidVal);
                 s.setString(8, xidString);
             } else {
                 s.setString(8, null);
@@ -381,7 +379,7 @@
             } else {
                 byte[] xidVal = xid.getEncodedXidBytes();
                 xidVal[0] = '-';
-                String xidString = printBase64Binary(xidVal);
+                String xidString = Base64.getEncoder().encodeToString(xidVal);
                 s.setString(1, xidString);
                 s.setLong(2, seq);
             }
@@ -466,7 +464,7 @@
             }
             if (xid != null) {
                 byte[] xidVal = encodeXid(xid, seq, priority);
-                String xidString = printBase64Binary(xidVal);
+                String xidString = Base64.getEncoder().encodeToString(xidVal);
                 s.setString(1, xidString);
             } else {
                 s.setLong(1, seq);
@@ -503,7 +501,7 @@
             }
             if (xid != null) {
                 byte[] xidVal = encodeXid(xid, seq, priority);
-                String xidString = printBase64Binary(xidVal);
+                String xidString = Base64.getEncoder().encodeToString(xidVal);
                 s.setString(1, xidString);
             } else {
                 s.setLong(1, seq);
@@ -991,7 +989,7 @@
             while (rs.next()) {
                 long id = rs.getLong(1);
                 String encodedString = rs.getString(2);
-                byte[] encodedXid = parseBase64Binary(encodedString);
+                byte[] encodedXid = Base64.getDecoder().decode(encodedString);
                 if (encodedXid[0] == '+') {
                     jdbcMemoryTransactionStore.recoverAdd(id, getBinaryData(rs, 3));
                 } else {
@@ -1006,7 +1004,7 @@
             rs = s.executeQuery();
             while (rs.next()) {
                 String encodedString = rs.getString(1);
-                byte[] encodedXid = parseBase64Binary(encodedString);
+                byte[] encodedXid = Base64.getDecoder().decode(encodedString);
                 String destination = rs.getString(2);
                 String subId = rs.getString(3);
                 String subName = rs.getString(4);
diff --git a/activemq-web/pom.xml b/activemq-web/pom.xml
index ea51dbf..a522817 100644
--- a/activemq-web/pom.xml
+++ b/activemq-web/pom.xml
@@ -59,10 +59,6 @@
       <artifactId>commons-io</artifactId>
     </dependency>
     <dependency>
-      <groupId>javax.xml.bind</groupId>
-      <artifactId>jaxb-api</artifactId>
-    </dependency>
-    <dependency>
       <groupId>${project.groupId}</groupId>
       <artifactId>activemq-unit-tests</artifactId>
       <scope>test</scope>
diff --git a/activemq-web/src/main/java/org/apache/activemq/web/WebClient.java b/activemq-web/src/main/java/org/apache/activemq/web/WebClient.java
index cbf8ecf..2202f51 100644
--- a/activemq-web/src/main/java/org/apache/activemq/web/WebClient.java
+++ b/activemq-web/src/main/java/org/apache/activemq/web/WebClient.java
@@ -22,6 +22,7 @@
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
 import java.util.ArrayList;
+import java.util.Base64;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
@@ -385,7 +386,7 @@
             String[] tokens = auth.split(" ");
             if (tokens.length == 2) {
                 String encoded = tokens[1].trim();
-                String credentials = new String(javax.xml.bind.DatatypeConverter.parseBase64Binary(encoded));
+                String credentials = new String(Base64.getDecoder().decode(encoded));
                 String[] creds = credentials.split(":");
                 if (creds.length == 2) {
                     client.setUsername(creds[0]);
diff --git a/pom.xml b/pom.xml
index e70dbb0..cda5c62 100644
--- a/pom.xml
+++ b/pom.xml
@@ -70,7 +70,7 @@
     <jakarta-jms-api-version>3.1.0</jakarta-jms-api-version>
     <jasypt-version>1.9.3</jasypt-version>
     <jaxb-bundle-version>2.3.2_1</jaxb-bundle-version>
-    <jetty11-version>11.0.15</jetty11-version>
+    <jetty11-version>11.0.16</jetty11-version>
     <jetty-version>${jetty11-version}</jetty-version>
     <jmdns-version>3.5.8</jmdns-version>
     <tomcat-api-version>9.0.65</tomcat-api-version>