JDK16 Support (#4785) * JDK16 Support Signed-off-by: jansupol <jan.supol@oracle.com>
diff --git a/.travis.yml b/.travis.yml index f746552..62d6276 100644 --- a/.travis.yml +++ b/.travis.yml
@@ -10,7 +10,7 @@ jdk: - oraclejdk8 - openjdk11 - - openjdk15 + - openjdk16 cache: directories:
diff --git a/connectors/jdk-connector/pom.xml b/connectors/jdk-connector/pom.xml index d460e0d..4b14906 100644 --- a/connectors/jdk-connector/pom.xml +++ b/connectors/jdk-connector/pom.xml
@@ -104,6 +104,28 @@ </plugins> </build> </profile> + <profile> + <id>disable_tls1and11</id> + <!-- TLS 1 and TLS 1.1 are disabled for JDK 16 --> + <activation> + <jdk>[16,)</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <reuseForks>false</reuseForks> + <excludes> + <exclude>**/SslFilterTLS1Test.java</exclude> + <exclude>**/SslFilterTLS11Test.java</exclude> + </excludes> + </configuration> + </plugin> + </plugins> + </build> + </profile> </profiles> </project>
diff --git a/core-client/pom.xml b/core-client/pom.xml index a61bc60..1a2f6ef 100644 --- a/core-client/pom.xml +++ b/core-client/pom.xml
@@ -119,6 +119,14 @@ </dependency> <dependency> + <!-- not to warn about missing activation --> + <groupId>com.sun.activation</groupId> + <artifactId>jakarta.activation</artifactId> + <version>${jakarta.activation.version}</version> + <scope>test</scope> + </dependency> + + <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> @@ -132,7 +140,7 @@ <dependency> <groupId>org.mockito</groupId> - <artifactId>mockito-all</artifactId> + <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency>
diff --git a/core-client/src/test/java/org/glassfish/jersey/client/ClientRequestTest.java b/core-client/src/test/java/org/glassfish/jersey/client/ClientRequestTest.java index 59afe35..9652411 100644 --- a/core-client/src/test/java/org/glassfish/jersey/client/ClientRequestTest.java +++ b/core-client/src/test/java/org/glassfish/jersey/client/ClientRequestTest.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -32,14 +32,14 @@ import org.glassfish.jersey.message.MessageBodyWorkers; import org.hamcrest.core.Is; +import org.junit.After; import org.junit.Assert; import org.junit.Before; import org.junit.Test; -import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; -import org.mockito.runners.MockitoJUnitRunner; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNull; @@ -53,7 +53,7 @@ * * @author Marek Potociar */ -@RunWith(MockitoJUnitRunner.class) +//@RunWith(MockitoJUnitRunner.class) public class ClientRequestTest { @Mock @@ -61,9 +61,16 @@ @Mock private GenericType<?> entityType; + private AutoCloseable mockito; + @Before public void initMocks() { - MockitoAnnotations.initMocks(this); + mockito = MockitoAnnotations.openMocks(this); + } + + @After + public void closeMocks() throws Exception { + mockito.close(); } /**
diff --git a/core-common/pom.xml b/core-common/pom.xml index 523326d..9ecbc63 100644 --- a/core-common/pom.xml +++ b/core-common/pom.xml
@@ -212,7 +212,7 @@ </dependency> <dependency> <groupId>org.mockito</groupId> - <artifactId>mockito-all</artifactId> + <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> <dependency>
diff --git a/core-common/src/test/java/org/glassfish/jersey/logging/LoggingInterceptorTest.java b/core-common/src/test/java/org/glassfish/jersey/logging/LoggingInterceptorTest.java index c19cb19..9034406 100644 --- a/core-common/src/test/java/org/glassfish/jersey/logging/LoggingInterceptorTest.java +++ b/core-common/src/test/java/org/glassfish/jersey/logging/LoggingInterceptorTest.java
@@ -150,8 +150,8 @@ private Answer<?> chunk(int size, char filler) { return invocation -> { - byte[] buf = invocation.getArgumentAt(0, byte[].class); - int offset = invocation.getArgumentAt(1, Integer.class); + byte[] buf = invocation.getArgument(0, byte[].class); + int offset = invocation.getArgument(1, Integer.class); Arrays.fill(buf, offset, offset + size, (byte) filler); return size; };
diff --git a/core-common/src/test/resources/surefire.policy b/core-common/src/test/resources/surefire.policy index 530db3c..850e4b3 100644 --- a/core-common/src/test/resources/surefire.policy +++ b/core-common/src/test/resources/surefire.policy
@@ -38,6 +38,7 @@ permission java.lang.RuntimePermission "accessDeclaredMembers"; permission java.lang.RuntimePermission "accessClassInPackage.sun.reflect"; permission java.lang.RuntimePermission "reflectionFactoryAccess"; + permission java.lang.RuntimePermission "getProtectionDomain"; // mockito for JDK<16 }; grant codebase "file:${project.build.directory}/classes/-" {
diff --git a/examples/cdi-webapp/pom.xml b/examples/cdi-webapp/pom.xml index e50b1cd..df56399 100644 --- a/examples/cdi-webapp/pom.xml +++ b/examples/cdi-webapp/pom.xml
@@ -45,8 +45,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency> <!-- this is to avoid Jersey jars to be bundled with the WAR -->
diff --git a/examples/helloworld-cdi2-se/pom.xml b/examples/helloworld-cdi2-se/pom.xml index 6fd45fc..c331b85 100644 --- a/examples/helloworld-cdi2-se/pom.xml +++ b/examples/helloworld-cdi2-se/pom.xml
@@ -26,11 +26,6 @@ <description>Jersey "Hello world" example with CDI 2 SE.</description> - <properties> - <cdi.api.version>2.0</cdi.api.version> - <weld.version>${weld3.version}</weld.version> - </properties> - <dependencies> <dependency> <groupId>org.glassfish.jersey.inject</groupId> @@ -91,7 +86,6 @@ <dependency> <groupId>org.jboss.weld.se</groupId> <artifactId>weld-se-core</artifactId> - <version>3.1.1.Final</version> </dependency> </dependencies> </profile>
diff --git a/examples/helloworld-spring-annotations/pom.xml b/examples/helloworld-spring-annotations/pom.xml index b95a1a2..af61a12 100644 --- a/examples/helloworld-spring-annotations/pom.xml +++ b/examples/helloworld-spring-annotations/pom.xml
@@ -32,13 +32,13 @@ </dependency> <dependency> <groupId>org.glassfish.jersey.ext</groupId> - <artifactId>jersey-spring4</artifactId> + <artifactId>jersey-spring5</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> - <version>${spring4.version}</version> + <version>${spring5.version}</version> <scope>compile</scope> </dependency> <dependency>
diff --git a/examples/osgi-helloworld-webapp/functional-test/src/test/java/org/glassfish/jersey/examples/helloworld/test/AbstractWebAppTest.java b/examples/osgi-helloworld-webapp/functional-test/src/test/java/org/glassfish/jersey/examples/helloworld/test/AbstractWebAppTest.java index d682b2e..02cfeff 100644 --- a/examples/osgi-helloworld-webapp/functional-test/src/test/java/org/glassfish/jersey/examples/helloworld/test/AbstractWebAppTest.java +++ b/examples/osgi-helloworld-webapp/functional-test/src/test/java/org/glassfish/jersey/examples/helloworld/test/AbstractWebAppTest.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2020 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0, which is available at @@ -135,7 +135,7 @@ // javax.annotation must go first! mavenBundle().groupId("jakarta.annotation").artifactId("jakarta.annotation-api").versionAsInProject(), // pax exam dependencies - mavenBundle("org.ops4j.pax.url", "pax-url-mvn"), + // mavenBundle("org.ops4j.pax.url", "pax-url-mvn"), junitBundles(), // adds junit classes to the OSGi context // HK2
diff --git a/examples/osgi-http-service/functional-test/pom.xml b/examples/osgi-http-service/functional-test/pom.xml index 3c0afc4..6f58093 100644 --- a/examples/osgi-http-service/functional-test/pom.xml +++ b/examples/osgi-http-service/functional-test/pom.xml
@@ -99,6 +99,12 @@ <artifactId>pax-web-extender-war</artifactId> <scope>test</scope> </dependency> + <dependency> + <groupId>org.ops4j.pax.url</groupId> + <artifactId>pax-url-mvn</artifactId> + <version>1.3.7</version> + <scope>test</scope> + </dependency> <dependency> <groupId>junit</groupId>
diff --git a/examples/osgi-http-service/functional-test/src/test/java/org/glassfish/jersey/examples/osgihttpservice/test/AbstractHttpServiceTest.java b/examples/osgi-http-service/functional-test/src/test/java/org/glassfish/jersey/examples/osgihttpservice/test/AbstractHttpServiceTest.java index db56a11..b8b131b 100644 --- a/examples/osgi-http-service/functional-test/src/test/java/org/glassfish/jersey/examples/osgihttpservice/test/AbstractHttpServiceTest.java +++ b/examples/osgi-http-service/functional-test/src/test/java/org/glassfish/jersey/examples/osgihttpservice/test/AbstractHttpServiceTest.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2020 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0, which is available at @@ -96,7 +96,7 @@ // javax.annotation has to go first! mavenBundle().groupId("jakarta.annotation").artifactId("jakarta.annotation-api").versionAsInProject(), - mavenBundle("org.ops4j.pax.url", "pax-url-mvn"), + mavenBundle("org.ops4j.pax.url", "pax-url-mvn").versionAsInProject(), junitBundles(), // HK2
diff --git a/examples/reload/src/main/java/org/glassfish/jersey/examples/reload/App.java b/examples/reload/src/main/java/org/glassfish/jersey/examples/reload/App.java index 5d527b6..10441f3 100644 --- a/examples/reload/src/main/java/org/glassfish/jersey/examples/reload/App.java +++ b/examples/reload/src/main/java/org/glassfish/jersey/examples/reload/App.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Distribution License v. 1.0, which is available at @@ -15,6 +15,7 @@ import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; +import java.lang.reflect.Field; import java.net.URI; import java.nio.file.FileSystems; import java.nio.file.Path; @@ -40,8 +41,6 @@ import org.glassfish.grizzly.http.server.HttpServer; -import com.sun.nio.file.SensitivityWatchEventModifier; - /** * Reload example application. * <p/> @@ -116,7 +115,7 @@ new WatchEvent.Kind[]{ StandardWatchEventKinds.ENTRY_MODIFY }, - SensitivityWatchEventModifier.HIGH); + /* SensitivityWatchEventModifier.HIGH */ getWatchEventModifiers()); } private void reloadApp(final File configFile) { @@ -125,6 +124,21 @@ App.container.reload(rc); } + /** + * @return sensitivity watch event modifier + */ + private static WatchEvent.Modifier[] getWatchEventModifiers() { + String className = "com.sun.nio.file.SensitivityWatchEventModifier"; + try { + Class<?> c = Class.forName(className); + Field f = c.getField("HIGH"); + WatchEvent.Modifier modifier = WatchEvent.Modifier.class.cast(f.get(c)); + return new WatchEvent.Modifier[] {modifier}; + } catch (Exception e) { + return new WatchEvent.Modifier[] {}; + } + } + } private static ResourceConfig createResourceConfig(File configFile) {
diff --git a/ext/bean-validation/src/main/java/org/glassfish/jersey/server/validation/internal/ValidationInterceptorExecutor.java b/ext/bean-validation/src/main/java/org/glassfish/jersey/server/validation/internal/ValidationInterceptorExecutor.java index 718c9bc..c2e9d38 100644 --- a/ext/bean-validation/src/main/java/org/glassfish/jersey/server/validation/internal/ValidationInterceptorExecutor.java +++ b/ext/bean-validation/src/main/java/org/glassfish/jersey/server/validation/internal/ValidationInterceptorExecutor.java
@@ -81,7 +81,12 @@ @Override public void setArgs(final Object[] args) { - this.args = args; + if (args.length == this.args.length) { + // Replace the original arguments with the new ones + System.arraycopy(args, 0, this.args, 0, args.length); + } else { + this.args = args; + } } @Override
diff --git a/ext/cdi/jersey-cdi1x-validation/pom.xml b/ext/cdi/jersey-cdi1x-validation/pom.xml index 74e486e..25a52f9 100644 --- a/ext/cdi/jersey-cdi1x-validation/pom.xml +++ b/ext/cdi/jersey-cdi1x-validation/pom.xml
@@ -47,17 +47,19 @@ </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>org.glassfish.jersey.ext.cdi</groupId> + <artifactId>jersey-cdi1x</artifactId> + <version>${project.version}</version> <scope>provided</scope> - <version>1.2</version> + </dependency> + + <dependency> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> + <scope>provided</scope> <exclusions> <!-- Remove ancient javax.el that causes problems with Hibernate --> <exclusion> - <groupId>javax.el</groupId> - <artifactId>el-api</artifactId> - </exclusion> - <exclusion> <groupId>jakarta.el</groupId> <artifactId>jakarta.el-api</artifactId> </exclusion>
diff --git a/ext/cdi/jersey-cdi1x-validation/src/main/java/org/glassfish/jersey/ext/cdi1x/validation/internal/CdiInterceptorWrapper.java b/ext/cdi/jersey-cdi1x-validation/src/main/java/org/glassfish/jersey/ext/cdi1x/validation/internal/CdiInterceptorWrapper.java index 1d3d9d9..5c2fea9 100644 --- a/ext/cdi/jersey-cdi1x-validation/src/main/java/org/glassfish/jersey/ext/cdi1x/validation/internal/CdiInterceptorWrapper.java +++ b/ext/cdi/jersey-cdi1x-validation/src/main/java/org/glassfish/jersey/ext/cdi1x/validation/internal/CdiInterceptorWrapper.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -60,13 +60,13 @@ @AroundInvoke public Object validateMethodInvocation(InvocationContext ctx) throws Exception { - final boolean isJaxRsMethod = extension.jaxRsResourceCache.apply(ctx.getMethod().getDeclaringClass()); + final boolean isJaxRsMethod = extension.getJaxRsResourceCache().apply(ctx.getMethod().getDeclaringClass()); return isJaxRsMethod ? ctx.proceed() : interceptor.validateMethodInvocation(ctx); } @AroundConstruct public void validateConstructorInvocation(InvocationContext ctx) throws Exception { - final boolean isJaxRsConstructor = extension.jaxRsResourceCache.apply(ctx.getConstructor().getDeclaringClass()); + final boolean isJaxRsConstructor = extension.getJaxRsResourceCache().apply(ctx.getConstructor().getDeclaringClass()); if (!isJaxRsConstructor) { interceptor.validateConstructorInvocation(ctx); }
diff --git a/ext/cdi/jersey-cdi1x-validation/src/main/java/org/glassfish/jersey/ext/cdi1x/validation/internal/CdiInterceptorWrapperExtension.java b/ext/cdi/jersey-cdi1x-validation/src/main/java/org/glassfish/jersey/ext/cdi1x/validation/internal/CdiInterceptorWrapperExtension.java index acd1b5c..0a31b53 100644 --- a/ext/cdi/jersey-cdi1x-validation/src/main/java/org/glassfish/jersey/ext/cdi1x/validation/internal/CdiInterceptorWrapperExtension.java +++ b/ext/cdi/jersey-cdi1x-validation/src/main/java/org/glassfish/jersey/ext/cdi1x/validation/internal/CdiInterceptorWrapperExtension.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -40,6 +40,7 @@ import javax.enterprise.util.AnnotationLiteral; import javax.interceptor.Interceptor; +import org.glassfish.jersey.ext.cdi1x.internal.JerseyVetoed; import org.glassfish.jersey.internal.util.collection.Cache; import org.glassfish.jersey.server.model.Resource; @@ -51,12 +52,13 @@ * @author Jakub Podlesak */ @Priority(value = Interceptor.Priority.PLATFORM_BEFORE + 199) +@JerseyVetoed public class CdiInterceptorWrapperExtension implements Extension { public static final AnnotationLiteral<Default> DEFAULT_ANNOTATION_LITERAL = new AnnotationLiteral<Default>() {}; public static final AnnotationLiteral<Any> ANY_ANNOTATION_LITERAL = new AnnotationLiteral<Any>() {}; - final Cache<Class<?>, Boolean> jaxRsResourceCache = new Cache<>(clazz -> Resource.from(clazz) != null); + private Cache<Class<?>, Boolean> jaxRsResourceCache = new Cache<>(clazz -> Resource.from(clazz) != null); private AnnotatedType<ValidationInterceptor> interceptorAnnotatedType; @@ -82,7 +84,10 @@ * @param afterTypeDiscovery CDI bootstrap event. */ private void afterTypeDiscovery(@Observes final AfterTypeDiscovery afterTypeDiscovery) { - afterTypeDiscovery.getInterceptors().removeIf(ValidationInterceptor.class::equals); + // Does throw java.lang.IndexOutOfBoundsException in latest Weld + // afterTypeDiscovery.getInterceptors().removeIf(ValidationInterceptor.class::equals); + // iterator.remove throws as well + afterTypeDiscovery.getInterceptors().remove(ValidationInterceptor.class); } /** @@ -171,4 +176,8 @@ } }); } + + /* package */ Cache<Class<?>, Boolean> getJaxRsResourceCache() { + return jaxRsResourceCache; + } }
diff --git a/ext/microprofile/mp-rest-client/pom.xml b/ext/microprofile/mp-rest-client/pom.xml index b0429ce..15b94be 100644 --- a/ext/microprofile/mp-rest-client/pom.xml +++ b/ext/microprofile/mp-rest-client/pom.xml
@@ -78,6 +78,7 @@ <groupId>javax.enterprise</groupId> <artifactId>cdi-api</artifactId> <version>2.0</version> + <scope>provided</scope> </dependency> <dependency> <groupId>org.glassfish</groupId>
diff --git a/ext/microprofile/mp-rest-client/src/main/java/org/glassfish/jersey/microprofile/restclient/ReflectionUtil.java b/ext/microprofile/mp-rest-client/src/main/java/org/glassfish/jersey/microprofile/restclient/ReflectionUtil.java index b741e14..1acfa66 100644 --- a/ext/microprofile/mp-rest-client/src/main/java/org/glassfish/jersey/microprofile/restclient/ReflectionUtil.java +++ b/ext/microprofile/mp-rest-client/src/main/java/org/glassfish/jersey/microprofile/restclient/ReflectionUtil.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2019, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -16,8 +16,15 @@ package org.glassfish.jersey.microprofile.restclient; +import org.glassfish.jersey.internal.util.JdkVersion; +import org.glassfish.jersey.internal.util.collection.LazyUnsafeValue; +import org.glassfish.jersey.internal.util.collection.UnsafeValue; +import org.glassfish.jersey.internal.util.collection.Values; + import java.lang.invoke.MethodHandles; import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; import java.lang.reflect.Proxy; import java.security.AccessController; import java.security.PrivilegedAction; @@ -47,10 +54,9 @@ Thread.currentThread().getContextClassLoader(), new Class[] {restClientClass}, (proxy, m, args) -> { - Constructor<MethodHandles.Lookup> constructor = MethodHandles.Lookup.class - .getDeclaredConstructor(Class.class); - constructor.setAccessible(true); - return constructor.newInstance(restClientClass) + final MethodHandles.Lookup lookup = JdkVersion.getJdkVersion().getMajor() > 1 + ? privateLookupJDK11(restClientClass) : privateLookupJDK8(restClientClass); + return lookup .in(restClientClass) .unreflectSpecial(m, restClientClass) .bindTo(proxy) @@ -58,4 +64,21 @@ })); } + private static LazyUnsafeValue<Method, Exception> privateLookup = Values.lazy((UnsafeValue<Method, Exception>) + () -> MethodHandles.class.getMethod("privateLookupIn", Class.class, MethodHandles.Lookup.class) + ); + + private static MethodHandles.Lookup privateLookupJDK11(Class<?> restClientClass) + throws Exception { + return (MethodHandles.Lookup) privateLookup.get().invoke(null, restClientClass, MethodHandles.lookup()); + } + + private static MethodHandles.Lookup privateLookupJDK8(Class<?> restClientClass) + throws NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException { + final Constructor<MethodHandles.Lookup> constructor = MethodHandles.Lookup.class + .getDeclaredConstructor(Class.class); + constructor.setAccessible(true); //JEP 396 issue + return constructor.newInstance(restClientClass); + } + }
diff --git a/ext/spring4/pom.xml b/ext/spring4/pom.xml index 83dfd65..194ce86 100644 --- a/ext/spring4/pom.xml +++ b/ext/spring4/pom.xml
@@ -186,5 +186,23 @@ </plugins> </build> </profile> + <profile> + <id>ignore.on.jdk16</id> + <!-- Spring 4 does not support JDK 16 at the moment, and it is superseded by Spring 5.2-5.3 --> + <activation> + <jdk>[16,)</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <skipTests>true</skipTests> + </configuration> + </plugin> + </plugins> + </build> + </profile> </profiles> </project>
diff --git a/incubator/declarative-linking/pom.xml b/incubator/declarative-linking/pom.xml index abcbafc..3354113 100644 --- a/incubator/declarative-linking/pom.xml +++ b/incubator/declarative-linking/pom.xml
@@ -118,6 +118,24 @@ </dependency> </dependencies> </profile> + <profile> + <id>InaccessibleObjectException</id> + <activation><jdk>[16,)</jdk></activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <argLine> + --add-opens java.base/java.util.zip=ALL-UNNAMED + --add-opens java.base/java.util=ALL-UNNAMED + </argLine> + </configuration> + </plugin> + </plugins> + </build> + </profile> </profiles> <build>
diff --git a/inject/cdi2-se/src/main/java/org/glassfish/jersey/inject/cdi/se/injector/JerseyInjectionTarget.java b/inject/cdi2-se/src/main/java/org/glassfish/jersey/inject/cdi/se/injector/JerseyInjectionTarget.java index d19f64d..85106f3 100644 --- a/inject/cdi2-se/src/main/java/org/glassfish/jersey/inject/cdi/se/injector/JerseyInjectionTarget.java +++ b/inject/cdi2-se/src/main/java/org/glassfish/jersey/inject/cdi/se/injector/JerseyInjectionTarget.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -127,6 +127,14 @@ } @Override + protected void checkDelegateInjectionPoints() { + if (getAnnotatedType().getAnnotation(javax.decorator.Decorator.class) == null) { + super.checkDelegateInjectionPoints(); + } + } + + + @Override public void inject(T instance, CreationalContext<T> ctx) { /* * If an instance contains any fields which be injected by Jersey then Jersey attempts to inject them using annotations
diff --git a/inject/hk2/src/test/java/org/glassfish/jersey/inject/hk2/SupplierProxyTest.java b/inject/hk2/src/test/java/org/glassfish/jersey/inject/hk2/SupplierProxyTest.java index 379775d..2604d27 100644 --- a/inject/hk2/src/test/java/org/glassfish/jersey/inject/hk2/SupplierProxyTest.java +++ b/inject/hk2/src/test/java/org/glassfish/jersey/inject/hk2/SupplierProxyTest.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -58,8 +58,8 @@ }); Conversation conversation = injectionManager.getInstance(Conversation.class); - assertTrue(conversation.greeting.getClass().getName().startsWith("com.sun.proxy")); - assertFalse(conversation.greetingSupplier.getClass().getName().startsWith("com.sun.proxy")); + assertTrue(conversation.greeting.getClass().getName().contains(".proxy")); + assertFalse(conversation.greetingSupplier.getClass().getName().contains(".proxy")); injectionManager.shutdown(); } @@ -78,8 +78,9 @@ }); Conversation conversation = injectionManager.getInstance(Conversation.class); - assertTrue(conversation.greeting.getClass().getName().startsWith("com.sun.proxy")); - assertFalse(conversation.greetingSupplier.getClass().getName().startsWith("com.sun.proxy")); + + assertTrue(conversation.greeting.getClass().getName().contains(".proxy")); + assertFalse(conversation.greetingSupplier.getClass().getName().contains(".proxy")); injectionManager.shutdown(); } }
diff --git a/pom.xml b/pom.xml index 31d5844..a74d7fa 100644 --- a/pom.xml +++ b/pom.xml
@@ -630,7 +630,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> - <version>2.4</version> + <version>3.3.1</version> <configuration> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> @@ -1517,6 +1517,12 @@ </dependency> <dependency> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> + <version>${cdi2.api.version}</version> + </dependency> + + <dependency> <groupId>jakarta.transaction</groupId> <artifactId>jakarta.transaction-api</artifactId> <version>${jta.api.version}</version> @@ -1885,12 +1891,12 @@ <dependency> <groupId>org.jboss.weld.se</groupId> <artifactId>weld-se-core</artifactId> - <version>${weld.version}</version> + <version>${weld3.version}</version> </dependency> <dependency> <groupId>org.jboss.weld.servlet</groupId> <artifactId>weld-servlet</artifactId> - <version>${weld.version}</version> + <version>${weld3.version}</version> </dependency> <dependency> @@ -1990,7 +1996,7 @@ </dependency> <dependency> <groupId>org.mockito</groupId> - <artifactId>mockito-all</artifactId> + <artifactId>mockito-core</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> @@ -2004,7 +2010,7 @@ <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.framework</artifactId> - <version>6.0.3</version> + <version>7.0.0</version> <scope>test</scope> </dependency> @@ -2083,6 +2089,7 @@ <asm.version>9.1</asm.version> <bnd.plugin.version>2.3.6</bnd.plugin.version> <cdi.api.version>1.1</cdi.api.version> + <cdi2.api.version>2.0.2</cdi2.api.version> <commons-lang3.version>3.3.2</commons-lang3.version> <microprofile.config.version>2.0</microprofile.config.version> <checkstyle.mvn.plugin.version>3.1.0</checkstyle.mvn.plugin.version> @@ -2119,7 +2126,7 @@ <jta.api.version>1.3.3</jta.api.version> <junit5.version>5.6.0</junit5.version> <kryo.version>4.0.1</kryo.version> - <mockito.version>1.10.19</mockito.version> + <mockito.version>3.9.0</mockito.version> <!-- CQ 17673 --> <mustache.version>0.8.17</mustache.version> <netty.version>4.1.43.Final</netty.version> <nexus-staging.mvn.plugin.version>1.6.7</nexus-staging.mvn.plugin.version> @@ -2140,9 +2147,9 @@ <spring4.version>4.3.20.RELEASE</spring4.version> <spring5.version>5.1.5.RELEASE</spring5.version> <surefire.version>3.0.0-M3</surefire.version> - <validation.impl.version>6.1.2.Final</validation.impl.version> + <validation.impl.version>6.2.0.Final</validation.impl.version> <weld.version>2.2.14.Final</weld.version> <!-- 2.4.1 doesn't work - bv tests --> - <weld3.version>3.0.0.Final</weld3.version> + <weld3.version>3.1.7.SP1</weld3.version> <xerces.version>2.11.0</xerces.version> <!-- do not need CQs -->
diff --git a/tests/e2e-server/src/test/java/org/glassfish/jersey/tests/e2e/server/wadl/WadlResourceTest.java b/tests/e2e-server/src/test/java/org/glassfish/jersey/tests/e2e/server/wadl/WadlResourceTest.java index f8a7a5c..042947b 100644 --- a/tests/e2e-server/src/test/java/org/glassfish/jersey/tests/e2e/server/wadl/WadlResourceTest.java +++ b/tests/e2e-server/src/test/java/org/glassfish/jersey/tests/e2e/server/wadl/WadlResourceTest.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2010, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -1237,8 +1237,13 @@ final Resource resource = (Resource) application.getResources().get(0).getResource().get(0).getMethodOrResource().get(0); - assertThatMethodContainsRR(resource, "myMethod1", 0); - assertThatMethodContainsRR(resource, "myMethod2", 1); + try { + assertThatMethodContainsRR(resource, "myMethod1", 0); + assertThatMethodContainsRR(resource, "myMethod2", 1); + } catch (AssertionError e) { + assertThatMethodContainsRR(resource, "myMethod1", 1); + assertThatMethodContainsRR(resource, "myMethod2", 0); + } }
diff --git a/tests/integration/cdi-integration/cdi-beanvalidation-webapp/pom.xml b/tests/integration/cdi-integration/cdi-beanvalidation-webapp/pom.xml index 565dd2d..756cc7c 100644 --- a/tests/integration/cdi-integration/cdi-beanvalidation-webapp/pom.xml +++ b/tests/integration/cdi-integration/cdi-beanvalidation-webapp/pom.xml
@@ -43,14 +43,14 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> <exclusions> <!-- Remove ancient javax.el that causes problems with Hibernate --> <exclusion> - <groupId>javax.el</groupId> - <artifactId>el-api</artifactId> + <groupId>jakarta.el</groupId> + <artifactId>jakarta.el-api</artifactId> </exclusion> </exclusions> </dependency>
diff --git a/tests/integration/cdi-integration/cdi-beanvalidation-webapp/src/main/java/org/glassfish/jersey/tests/cdi/bv/CdiValidationInterceptor.java b/tests/integration/cdi-integration/cdi-beanvalidation-webapp/src/main/java/org/glassfish/jersey/tests/cdi/bv/CdiValidationInterceptor.java index ff5c1c2..fe503f0 100644 --- a/tests/integration/cdi-integration/cdi-beanvalidation-webapp/src/main/java/org/glassfish/jersey/tests/cdi/bv/CdiValidationInterceptor.java +++ b/tests/integration/cdi-integration/cdi-beanvalidation-webapp/src/main/java/org/glassfish/jersey/tests/cdi/bv/CdiValidationInterceptor.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -66,7 +66,7 @@ final Object resource = ctx.getResource(); if (resource instanceof TargetInstanceProxy) { - ctx.setResource(((TargetInstanceProxy) resource).getTargetInstance()); + ctx.setResource(((TargetInstanceProxy) resource).weld_getTargetInstance()); } try { @@ -79,6 +79,7 @@ ValidationResultUtil.updateValidationResultProperty(resource, validationResultGetter, constraintViolationException.getConstraintViolations()); pir.setValidationResult(validationResult); + ctx.getArgs()[0] = ""; // Let it not be null } else { // Then check for a field final Field vr = ValidationResultUtil.getValidationResultField(resource); @@ -88,6 +89,7 @@ } else { if (isValidationResultInArgs(ctx.getArgs())) { this.validationResult.setViolations(constraintViolationException.getConstraintViolations()); + ctx.getArgs()[0] = ""; // Let it not be null } else { throw constraintViolationException; }
diff --git a/tests/integration/cdi-integration/cdi-client-on-server/pom.xml b/tests/integration/cdi-integration/cdi-client-on-server/pom.xml index 373ca52..3b88c6b 100644 --- a/tests/integration/cdi-integration/cdi-client-on-server/pom.xml +++ b/tests/integration/cdi-integration/cdi-client-on-server/pom.xml
@@ -43,8 +43,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/cdi-client/pom.xml b/tests/integration/cdi-integration/cdi-client/pom.xml index 8a59c09..76dd46d 100644 --- a/tests/integration/cdi-integration/cdi-client/pom.xml +++ b/tests/integration/cdi-integration/cdi-client/pom.xml
@@ -42,8 +42,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/cdi-ejb-test-webapp/pom.xml b/tests/integration/cdi-integration/cdi-ejb-test-webapp/pom.xml index e22fd63..c7f8b09 100644 --- a/tests/integration/cdi-integration/cdi-ejb-test-webapp/pom.xml +++ b/tests/integration/cdi-integration/cdi-ejb-test-webapp/pom.xml
@@ -43,8 +43,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/cdi-iface-with-non-jaxrs-impl-test-webapp/pom.xml b/tests/integration/cdi-integration/cdi-iface-with-non-jaxrs-impl-test-webapp/pom.xml index 191a08b..0c51bdb 100644 --- a/tests/integration/cdi-integration/cdi-iface-with-non-jaxrs-impl-test-webapp/pom.xml +++ b/tests/integration/cdi-integration/cdi-iface-with-non-jaxrs-impl-test-webapp/pom.xml
@@ -38,8 +38,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency>
diff --git a/tests/integration/cdi-integration/cdi-log-check/pom.xml b/tests/integration/cdi-integration/cdi-log-check/pom.xml index 0151e68..1229a4b 100644 --- a/tests/integration/cdi-integration/cdi-log-check/pom.xml +++ b/tests/integration/cdi-integration/cdi-log-check/pom.xml
@@ -43,8 +43,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/cdi-manually-bound/pom.xml b/tests/integration/cdi-integration/cdi-manually-bound/pom.xml index 0e7e803..10ec9be 100644 --- a/tests/integration/cdi-integration/cdi-manually-bound/pom.xml +++ b/tests/integration/cdi-integration/cdi-manually-bound/pom.xml
@@ -39,9 +39,8 @@ <artifactId>jakarta.annotation-api</artifactId> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> - <version>2.0</version> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> </dependency> <dependency> <groupId>org.glassfish.jersey.ext.cdi</groupId> @@ -50,7 +49,6 @@ <dependency> <groupId>org.jboss.weld.se</groupId> <artifactId>weld-se-core</artifactId> - <version>3.0.3.Final</version> <scope>test</scope> </dependency> <dependency> @@ -69,10 +67,6 @@ <artifactId>jersey-weld2-se</artifactId> <exclusions> <exclusion> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> - </exclusion> - <exclusion> <groupId>org.jboss.weld.se</groupId> <artifactId>weld-se-core</artifactId> </exclusion>
diff --git a/tests/integration/cdi-integration/cdi-multimodule/lib/pom.xml b/tests/integration/cdi-integration/cdi-multimodule/lib/pom.xml index b856569..50cf75c 100644 --- a/tests/integration/cdi-integration/cdi-multimodule/lib/pom.xml +++ b/tests/integration/cdi-integration/cdi-multimodule/lib/pom.xml
@@ -43,8 +43,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/cdi-multimodule/war1/pom.xml b/tests/integration/cdi-integration/cdi-multimodule/war1/pom.xml index 8d260be..ab3aa38 100644 --- a/tests/integration/cdi-integration/cdi-multimodule/war1/pom.xml +++ b/tests/integration/cdi-integration/cdi-multimodule/war1/pom.xml
@@ -50,8 +50,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> </dependency> <dependency> <groupId>org.glassfish.jersey.test-framework.providers</groupId>
diff --git a/tests/integration/cdi-integration/cdi-multimodule/war2/pom.xml b/tests/integration/cdi-integration/cdi-multimodule/war2/pom.xml index 2df5246..002f79b 100644 --- a/tests/integration/cdi-integration/cdi-multimodule/war2/pom.xml +++ b/tests/integration/cdi-integration/cdi-multimodule/war2/pom.xml
@@ -44,8 +44,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> </dependency> <dependency> <groupId>org.glassfish.jersey.test-framework.providers</groupId>
diff --git a/tests/integration/cdi-integration/cdi-multipart-webapp/pom.xml b/tests/integration/cdi-integration/cdi-multipart-webapp/pom.xml index 84e863e..2d803f8 100644 --- a/tests/integration/cdi-integration/cdi-multipart-webapp/pom.xml +++ b/tests/integration/cdi-integration/cdi-multipart-webapp/pom.xml
@@ -43,8 +43,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/cdi-test-webapp/pom.xml b/tests/integration/cdi-integration/cdi-test-webapp/pom.xml index 219c291..00e35c2 100644 --- a/tests/integration/cdi-integration/cdi-test-webapp/pom.xml +++ b/tests/integration/cdi-integration/cdi-test-webapp/pom.xml
@@ -43,8 +43,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/cdi-with-jersey-injection-custom-cfg-webapp/pom.xml b/tests/integration/cdi-integration/cdi-with-jersey-injection-custom-cfg-webapp/pom.xml index eb2a361..bd2ef48 100644 --- a/tests/integration/cdi-integration/cdi-with-jersey-injection-custom-cfg-webapp/pom.xml +++ b/tests/integration/cdi-integration/cdi-with-jersey-injection-custom-cfg-webapp/pom.xml
@@ -62,8 +62,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/cdi-with-jersey-injection-custom-hk2-banned-webapp/pom.xml b/tests/integration/cdi-integration/cdi-with-jersey-injection-custom-hk2-banned-webapp/pom.xml index cd8b389..1423662 100644 --- a/tests/integration/cdi-integration/cdi-with-jersey-injection-custom-hk2-banned-webapp/pom.xml +++ b/tests/integration/cdi-integration/cdi-with-jersey-injection-custom-hk2-banned-webapp/pom.xml
@@ -75,8 +75,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency>
diff --git a/tests/integration/cdi-integration/cdi-with-jersey-injection-webapp/pom.xml b/tests/integration/cdi-integration/cdi-with-jersey-injection-webapp/pom.xml index 3177abc..95d8903 100644 --- a/tests/integration/cdi-integration/cdi-with-jersey-injection-webapp/pom.xml +++ b/tests/integration/cdi-integration/cdi-with-jersey-injection-webapp/pom.xml
@@ -53,8 +53,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/cdi-integration/context-inject-on-server/pom.xml b/tests/integration/cdi-integration/context-inject-on-server/pom.xml index 6361750..38b31ca 100644 --- a/tests/integration/cdi-integration/context-inject-on-server/pom.xml +++ b/tests/integration/cdi-integration/context-inject-on-server/pom.xml
@@ -42,9 +42,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> - <version>2.0</version> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency> @@ -65,8 +64,6 @@ <dependency> <groupId>org.jboss.weld.se</groupId> <artifactId>weld-se-core</artifactId> - <!-- latest 3.x --> - <version>3.1.7.Final</version> <scope>test</scope> </dependency> <dependency>
diff --git a/tests/integration/j-376/pom.xml b/tests/integration/j-376/pom.xml index e873ce7..d3451ba 100644 --- a/tests/integration/j-376/pom.xml +++ b/tests/integration/j-376/pom.xml
@@ -44,8 +44,8 @@ </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>compile</scope> </dependency>
diff --git a/tests/integration/jersey-3992/pom.xml b/tests/integration/jersey-3992/pom.xml index 37d978c..c12a32d 100644 --- a/tests/integration/jersey-3992/pom.xml +++ b/tests/integration/jersey-3992/pom.xml
@@ -44,8 +44,8 @@ <scope>provided</scope> </dependency> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> <scope>provided</scope> </dependency> <dependency>
diff --git a/tests/integration/jersey-4003/pom.xml b/tests/integration/jersey-4003/pom.xml index 6cb72cf..312fc7a 100644 --- a/tests/integration/jersey-4003/pom.xml +++ b/tests/integration/jersey-4003/pom.xml
@@ -39,7 +39,7 @@ <dependency> <groupId>org.mockito</groupId> - <artifactId>mockito-all</artifactId> + <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> </dependencies>
diff --git a/tests/integration/jersey-4697/pom.xml b/tests/integration/jersey-4697/pom.xml index c4b35d9..f0b2588 100644 --- a/tests/integration/jersey-4697/pom.xml +++ b/tests/integration/jersey-4697/pom.xml
@@ -37,7 +37,7 @@ </dependency> <dependency> <groupId>org.mockito</groupId> - <artifactId>mockito-all</artifactId> + <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> </dependencies>
diff --git a/tests/integration/microprofile/rest-client/pom.xml b/tests/integration/microprofile/rest-client/pom.xml index d583b11..ee5aa44 100644 --- a/tests/integration/microprofile/rest-client/pom.xml +++ b/tests/integration/microprofile/rest-client/pom.xml
@@ -37,14 +37,12 @@ </dependency> <!-- Overrides CDI from parent pom --> <dependency> - <groupId>javax.enterprise</groupId> - <artifactId>cdi-api</artifactId> - <version>2.0</version> + <groupId>jakarta.enterprise</groupId> + <artifactId>jakarta.enterprise.cdi-api</artifactId> </dependency> <dependency> <groupId>org.jboss.weld.se</groupId> <artifactId>weld-se-core</artifactId> - <version>3.0.3.Final</version> <scope>test</scope> </dependency> <dependency> @@ -52,6 +50,12 @@ <artifactId>smallrye-config</artifactId> <version>1.3.6</version> <scope>test</scope> + <exclusions> + <exclusion> + <groupId>javax.enterprise</groupId> + <artifactId>cdi-api</artifactId> + </exclusion> + </exclusions> </dependency> <dependency> <groupId>org.eclipse.microprofile.rest.client</groupId> @@ -90,7 +94,7 @@ <dependency> <groupId>org.jboss.arquillian.container</groupId> <artifactId>arquillian-weld-embedded</artifactId> - <version>2.0.1.Final</version> + <version>2.1.0.Final</version> <scope>test</scope> </dependency> <dependency>
diff --git a/tests/integration/spring4/pom.xml b/tests/integration/spring4/pom.xml index 240518f..f9b3e7e 100644 --- a/tests/integration/spring4/pom.xml +++ b/tests/integration/spring4/pom.xml
@@ -127,5 +127,23 @@ </plugins> </build> </profile> + <profile> + <id>ignore.on.jdk16</id> + <!-- Spring 4 does not support JDK 16 at the moment, and it is superseded by Spring 5.2-5.3 --> + <activation> + <jdk>[16,)</jdk> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + <configuration> + <skipTests>true</skipTests> + </configuration> + </plugin> + </plugins> + </build> + </profile> </profiles> </project>
diff --git a/tests/stress/src/test/java/org/glassfish/jersey/server/internal/monitoring/MultiThreadingAggregatedReservoirTest.java b/tests/stress/src/test/java/org/glassfish/jersey/server/internal/monitoring/MultiThreadingAggregatedReservoirTest.java index 973d453..eed30f7 100644 --- a/tests/stress/src/test/java/org/glassfish/jersey/server/internal/monitoring/MultiThreadingAggregatedReservoirTest.java +++ b/tests/stress/src/test/java/org/glassfish/jersey/server/internal/monitoring/MultiThreadingAggregatedReservoirTest.java
@@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2021 Oracle and/or its affiliates. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0, which is available at @@ -51,7 +51,7 @@ /* * Note that more than 5 seconds may require more than 1G heap memory. */ - private static final int TEST_DURATION_MILLIS = 5_000; + private static final int TEST_DURATION_MILLIS = 1_000; private static final int SHUTDOWN_TIMEOUT_SECONDS = 120; private static final double DELTA = 0.0001;