diff --git a/artemis-cdi-client/pom.xml b/artemis-cdi-client/pom.xml index 9cc3fa8e52..53350e7e18 100644 --- a/artemis-cdi-client/pom.xml +++ b/artemis-cdi-client/pom.xml @@ -29,6 +29,7 @@ ${project.basedir}/.. + 1.3.2 artemis-cdi-client @@ -83,6 +84,11 @@ javax.inject javax.inject + + javax.annotation + javax.annotation-api + ${javax.annotation.version} + javax.enterprise cdi-api diff --git a/artemis-dto/pom.xml b/artemis-dto/pom.xml index 27fecd91bd..f0780dd552 100644 --- a/artemis-dto/pom.xml +++ b/artemis-dto/pom.xml @@ -99,6 +99,9 @@ + @@ -125,6 +128,11 @@ jaxb-jxc ${version.jaxb} + + org.glassfish.jaxb + jaxb-runtime + 2.3.2 + diff --git a/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/package-info.java b/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/package-info.java index 0a8b297ee4..7055bfb9c0 100644 --- a/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/package-info.java +++ b/artemis-dto/src/main/java/org/apache/activemq/artemis/dto/package-info.java @@ -18,6 +18,7 @@ * The JAXB POJOs for the XML configuration of ActiveMQ Artemis broker */ @javax.xml.bind.annotation.XmlSchema( + xmlns = {@javax.xml.bind.annotation.XmlNs(prefix = "xs", namespaceURI = "http://www.w3.org/2001/XMLSchema")}, namespace = "http://activemq.org/schema", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package org.apache.activemq.artemis.dto; diff --git a/artemis-features/pom.xml b/artemis-features/pom.xml index 283608c5b2..7afbbf6589 100644 --- a/artemis-features/pom.xml +++ b/artemis-features/pom.xml @@ -26,7 +26,7 @@ ActiveMQ Artemis Features - 4.1.1 + 4.2.3 diff --git a/artemis-rest/pom.xml b/artemis-rest/pom.xml index 96796a0465..5af0fc6990 100644 --- a/artemis-rest/pom.xml +++ b/artemis-rest/pom.xml @@ -127,6 +127,12 @@ jaxb-api 2.2.7 + + org.glassfish.jaxb + jaxb-runtime + 2.3.2 + test + javax.servlet servlet-api diff --git a/artemis-selector/pom.xml b/artemis-selector/pom.xml index fc267c3d8b..4a61be5225 100644 --- a/artemis-selector/pom.xml +++ b/artemis-selector/pom.xml @@ -84,6 +84,48 @@ + + jdk8 + + 1.8 + + java.vendor + !IBM Corporation + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + + -Xep:MissingOverride:WARN + + + + + + + + jdk11 + + 11 + + java.vendor + !IBM Corporation + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + + + @@ -94,16 +136,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - - - - -Xep:MissingOverride:WARN - - - org.codehaus.mojo javacc-maven-plugin diff --git a/artemis-website/pom.xml b/artemis-website/pom.xml index 3ceda36e78..7ee20871d1 100644 --- a/artemis-website/pom.xml +++ b/artemis-website/pom.xml @@ -92,7 +92,7 @@ maven-javadoc-plugin - 2.10.1 + 3.1.0 javadoc-jar @@ -101,6 +101,8 @@ jar + none + ${forceHtml4} true 128m 512m @@ -129,6 +131,15 @@ + + jdk11 + + 11 + + + -html4 + + release diff --git a/pom.xml b/pom.xml index 436adf36ea..c1125b8490 100644 --- a/pom.xml +++ b/pom.xml @@ -75,7 +75,7 @@ scp://people.apache.org/x1/www/activemq.apache.org 1.0.0 - 4.0.6 + 4.2.3 4.9.1 2.4 3.0 @@ -89,7 +89,7 @@ 9.4.3.v20170317 3.6.13.Final 2.4 - 2.8.47 + 2.25.0 4.1.34.Final 2.0.22.Final 0.33.1 @@ -867,6 +867,10 @@ jdk18 1.8 + + java.vendor + !IBM Corporation + @@ -877,6 +881,68 @@ -Xdoclint:none + + org.apache.maven.plugins + maven-compiler-plugin + + 3.1 + + + true + true + ${javac-compiler-id} + + -Xep:MissingOverride:ERROR + -Xep:NonAtomicVolatileUpdate:ERROR + -Xep:SynchronizeOnNonFinalField:ERROR + -Xep:StaticAccessedFromInstance:ERROR + -Xep:SynchronizeOnNonFinalField:ERROR + -Xep:WaitNotInLoop:ERROR + -Xdiags:verbose + + + + + org.codehaus.plexus + plexus-compiler-javac-errorprone + 2.8 + + + com.google.errorprone + error_prone_core + 2.0.9 + + + + + + + + jdk11 + + 11 + + java.vendor + !IBM Corporation + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + -Xdoclint:none + + + + org.apache.maven.plugins + maven-compiler-plugin + + 3.1 + @@ -1334,40 +1400,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - - 3.1 - - - true - true - ${javac-compiler-id} - - -Xep:MissingOverride:ERROR - -Xep:NonAtomicVolatileUpdate:ERROR - -Xep:SynchronizeOnNonFinalField:ERROR - -Xep:StaticAccessedFromInstance:ERROR - -Xep:SynchronizeOnNonFinalField:ERROR - -Xep:WaitNotInLoop:ERROR - -Xdiags:verbose - - - - - org.codehaus.plexus - plexus-compiler-javac-errorprone - 2.8 - - - com.google.errorprone - error_prone_core - 2.0.9 - - - org.apache.maven.plugins maven-clean-plugin diff --git a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/jmx/JmxConnectionTest.java b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/jmx/JmxConnectionTest.java index bb21c92442..c9ec140d17 100644 --- a/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/jmx/JmxConnectionTest.java +++ b/tests/smoke-tests/src/test/java/org/apache/activemq/artemis/tests/smoke/jmx/JmxConnectionTest.java @@ -26,9 +26,11 @@ import java.lang.reflect.Field; import java.rmi.server.RemoteObject; import java.rmi.server.RemoteRef; -import com.sun.jmx.remote.internal.ProxyRef; +import io.netty.util.internal.PlatformDependent; +import io.netty.util.internal.shaded.org.jctools.util.UnsafeAccess; import org.apache.activemq.artemis.tests.smoke.common.SmokeTestBase; import org.junit.Assert; +import org.junit.Assume; import org.junit.Before; import org.junit.Test; import sun.rmi.server.UnicastRef; @@ -47,16 +49,30 @@ public class JmxConnectionTest extends SmokeTestBase { private static final int RMI_REGISTRY_PORT = 10098; public static final String SERVER_NAME_0 = "jmx"; + private Class proxyRefClass; @Before public void before() throws Exception { cleanupData(SERVER_NAME_0); disableCheckThread(); startServer(SERVER_NAME_0, 0, 30000); + try { + final Class aClass = Class.forName("com.sun.jmx.remote.internal.ProxyRef"); + proxyRefClass = aClass; + } catch (ClassNotFoundException ex) { + //try with a shiny new version + try { + final Class aClass = Class.forName("com.sun.jmx.remote.internal.rmi.ProxyRef"); + proxyRefClass = aClass; + } catch (ClassNotFoundException ex2) { + //no op + } + } } @Test public void testJmxConnection() throws Throwable { + Assert.assertNotNull(proxyRefClass); try { // Without this, the RMI server would bind to the default interface IP (the user's local IP mostly) @@ -96,17 +112,22 @@ public class JmxConnectionTest extends SmokeTestBase { // 3. RemoteObject::getRef is hereby expected to return ProxyRef RemoteRef remoteRef = remoteObject.getRef(); - Assert.assertTrue(remoteRef instanceof ProxyRef); - ProxyRef proxyRef = (ProxyRef) remoteRef; - + Assert.assertTrue(proxyRefClass.isInstance(remoteRef)); // 4. ProxyRef::ref is expected to contain UnicastRef (UnicastRef2 resp.) - Field refField = ProxyRef.class.getDeclaredField("ref"); - refField.setAccessible(true); - remoteRef = (RemoteRef) refField.get(proxyRef); - Assert.assertTrue(remoteRef instanceof UnicastRef); + Field refField = proxyRefClass.getDeclaredField("ref"); + RemoteRef remoteRefField; + try { + refField.setAccessible(true); + remoteRefField = (RemoteRef) refField.get(remoteRef); + } catch (Throwable error) { + Assume.assumeTrue("Unsafe must be available to continue the test", PlatformDependent.hasUnsafe()); + remoteRefField = (RemoteRef) UnsafeAccess.UNSAFE.getObject(remoteRef, UnsafeAccess.UNSAFE.objectFieldOffset(refField)); + } + Assert.assertNotNull(remoteRefField); + Assert.assertTrue(remoteRefField instanceof UnicastRef); // 5. UnicastRef::getLiveRef returns LiveRef - LiveRef liveRef = ((UnicastRef) remoteRef).getLiveRef(); + LiveRef liveRef = ((UnicastRef) remoteRefField).getLiveRef(); Assert.assertEquals(RMI_REGISTRY_PORT, liveRef.getPort()); @@ -119,5 +140,4 @@ public class JmxConnectionTest extends SmokeTestBase { } } - }