diff --git a/.github/workflows/maven-package.yml b/.github/workflows/maven-package.yml index 280c93a2c..c283960a6 100644 --- a/.github/workflows/maven-package.yml +++ b/.github/workflows/maven-package.yml @@ -3,9 +3,9 @@ name: Jakarta REST CI on: push: - branches: [ master, 4.0-SNAPSHOT ] + branches: [ main ] pull_request: - branches: [ master, 4.0-SNAPSHOT ] + branches: [ main ] jobs: build: @@ -13,14 +13,14 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java: [ '11', '17' ] + java: ['17', '21' ] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up JDK ${{ matrix.java }} - uses: actions/setup-java@v2 + uses: actions/setup-java@v4 with: java-version: ${{ matrix.java }} distribution: 'temurin' - name: Build with Maven - run: mvn -B verify + run: mvn -B -ntp clean verify -Djaxrs.all.build diff --git a/etc/config/checkstyle.xml b/etc/config/checkstyle.xml index 254bc1b48..2c3f6c8fd 100644 --- a/etc/config/checkstyle.xml +++ b/etc/config/checkstyle.xml @@ -1,7 +1,7 @@ - diff --git a/examples/pom.xml b/examples/pom.xml index 62d5e2693..1939e03ed 100644 --- a/examples/pom.xml +++ b/examples/pom.xml @@ -1,7 +1,7 @@ - org.codehaus.mojo - buildnumber-maven-plugin - 1.4 - - {0,date,MM/dd/yyyy hh:mm aa} - - timestamp - - - - - validate - - create - - - - - - maven-javadoc-plugin - 3.3.0 - - JAX-RS ${project.version} API Specification - - Oracle - and/or its affiliates. All Rights Reserved. - ]]> - - - - - - attach-javadocs - - jar - - - - - - maven-source-plugin - 3.2.1 - - - attach-sources - - jar-no-fork - - - - - - maven-jxr-plugin - 3.1.1 - - - - jxr - - validate - - - - - maven-checkstyle-plugin - 3.1.2 - - ${project.build.directory}/checkstyle - ${project.build.directory}/checkstyle/checkstyle-result.xml - ${basedir}/../etc/config/checkstyle.xml - true - - - - com.puppycrawl.tools - checkstyle - 8.44 - - - - - - checkstyle - - validate - - - - - org.glassfish.copyright - glassfish-copyright-maven-plugin - 1.39 - - ${basedir}/../etc/config/copyright-exclude - - git - - false - - true - - true - - false - - false - - - - maven-compiler-plugin @@ -248,34 +64,19 @@ ${project.version} - - jakarta.xml.bind - jakarta.xml.bind-api - 3.0.1 - - jakarta.enterprise jakarta.enterprise.cdi-api - 3.0.0 jakarta.enterprise.concurrent jakarta.enterprise.concurrent-api - 2.0.0 - - - - jakarta.ejb - jakarta.ejb-api - 4.0.0 jakarta.validation jakarta.validation-api - 3.0.0 diff --git a/examples/src/main/java/jaxrs/examples/async/LongRunningEjbResource.java b/examples/src/main/java/jaxrs/examples/async/LongRunningEjbResource.java deleted file mode 100644 index 02a9f356a..000000000 --- a/examples/src/main/java/jaxrs/examples/async/LongRunningEjbResource.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2012, 2020 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 - * http://www.eclipse.org/org/documents/edl-v10.php. - * - * SPDX-License-Identifier: BSD-3-Clause - */ - -package jaxrs.examples.async; - -import jakarta.ejb.Asynchronous; -import jakarta.ejb.Stateless; -import jakarta.ws.rs.GET; -import jakarta.ws.rs.Path; -import jakarta.ws.rs.container.AsyncResponse; -import jakarta.ws.rs.container.Suspended; - -/** - * Example of a long running EJB resource. - * - * @author Marek Potociar - */ -@Stateless -@Path("/") -public class LongRunningEjbResource { - @GET - @Asynchronous - public void longRunningOperation(@Suspended AsyncResponse ar) { - final String result = executeLongRunningOperation(); - ar.resume(result); - } - - private String executeLongRunningOperation() { - try { - Thread.sleep(10000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - return "done"; - } -} diff --git a/examples/src/main/java/jaxrs/examples/client/BasicExamples.java b/examples/src/main/java/jaxrs/examples/client/BasicExamples.java index 2ee485e9f..1ac608237 100644 --- a/examples/src/main/java/jaxrs/examples/client/BasicExamples.java +++ b/examples/src/main/java/jaxrs/examples/client/BasicExamples.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 2024 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 @@ -41,7 +41,6 @@ import jakarta.ws.rs.ext.ReaderInterceptorContext; import jakarta.ws.rs.ext.WriterInterceptor; import jakarta.ws.rs.ext.WriterInterceptorContext; -import jakarta.xml.bind.annotation.XmlRootElement; import jaxrs.examples.client.custom.ThrottledClient; import static jakarta.ws.rs.client.Entity.form; @@ -59,7 +58,6 @@ public class BasicExamples { /** * Customer bean. */ - @XmlRootElement public static class Customer { private final String name; diff --git a/examples/src/main/java/jaxrs/examples/client/spec/SpecExamples.java b/examples/src/main/java/jaxrs/examples/client/spec/SpecExamples.java index bf79a3740..a98cea335 100644 --- a/examples/src/main/java/jaxrs/examples/client/spec/SpecExamples.java +++ b/examples/src/main/java/jaxrs/examples/client/spec/SpecExamples.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2019 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 2024 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 @@ -21,7 +21,6 @@ import jakarta.ws.rs.core.Response; import static jakarta.ws.rs.client.Entity.entity; -import jakarta.xml.bind.annotation.XmlRootElement; import jaxrs.examples.client.custom.ThrottledClient; /** @@ -33,7 +32,6 @@ public class SpecExamples { /** * Customer bean. */ - @XmlRootElement public static class Customer { private final String name; diff --git a/examples/src/main/java/jaxrs/examples/link/clusterservice/Cluster.java b/examples/src/main/java/jaxrs/examples/link/clusterservice/Cluster.java index cba119685..d2f083565 100644 --- a/examples/src/main/java/jaxrs/examples/link/clusterservice/Cluster.java +++ b/examples/src/main/java/jaxrs/examples/link/clusterservice/Cluster.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 2024 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 @@ -13,14 +13,11 @@ import java.util.ArrayList; import java.util.List; -import jakarta.xml.bind.annotation.XmlRootElement; - /** * Cluster class. * * @author Santiago.Pericas-Geertsen@oracle.com */ -@XmlRootElement public class Cluster { enum Status { diff --git a/examples/src/main/java/jaxrs/examples/link/clusterservice/Machine.java b/examples/src/main/java/jaxrs/examples/link/clusterservice/Machine.java index 12b5a571b..4ea9414c7 100644 --- a/examples/src/main/java/jaxrs/examples/link/clusterservice/Machine.java +++ b/examples/src/main/java/jaxrs/examples/link/clusterservice/Machine.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 2024 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 @@ -10,14 +10,11 @@ package jaxrs.examples.link.clusterservice; -import jakarta.xml.bind.annotation.XmlRootElement; - /** * Machine class. * * @author Santiago.Pericas-Geertsen@oracle.com */ -@XmlRootElement public class Machine { enum Status { diff --git a/jaxrs-api/pom.xml b/jaxrs-api/pom.xml index af83d8591..ac9d90c06 100644 --- a/jaxrs-api/pom.xml +++ b/jaxrs-api/pom.xml @@ -1,7 +1,7 @@ - skip-tests - - false - - - true - - - - ${project.artifactId} - - - - maven-jar-plugin - 3.2.0 - - - - org.codehaus.mojo - buildnumber-maven-plugin - 1.4 - - {0,date,MM/dd/yyyy hh:mm aa} - - timestamp - - - - - validate - - create - - - - - - org.apache.felix - maven-bundle-plugin - ${maven.bundle.plugin.version} - true - - - <_failok>true - ${buildNumber} - Jakarta RESTful Web Services API (JAX-RS) - ${project.version} - jakarta.ws.rs-api - * - ${api.package} - ${project.version} - ${spec.version} - Eclipse Foundation - ${spec.version} - <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@))) - <_nodefaultversion>false - osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))" - - - - - osgi-bundle - package - - bundle - - - - - - maven-javadoc-plugin - ${maven.javadoc.plugin.version} - - 8 - ${apidocs.title} - true - - Copyright © 2018, 2020 Eclipse Foundation.
Use is subject to license terms.]]> -
- true - - - module-info.java - -
- - - attach-javadocs - - jar - - - -
- - maven-source-plugin - 3.2.1 - - - attach-sources - - jar-no-fork - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.2.0 - - - add-legal-resource - generate-resources - - add-resource - - - - - ${legal.doc.folder} - - NOTICE.md - LICENSE.md - - META-INF - - - - - - - - maven-jxr-plugin - 3.1.1 - - - - jxr - - validate - - - - - maven-checkstyle-plugin - 3.1.2 - - ${project.build.directory}/checkstyle - ${project.build.directory}/checkstyle/checkstyle-result.xml - ${basedir}/../etc/config/checkstyle.xml - **/module-info.java - true - - - - com.puppycrawl.tools - checkstyle - 8.44 - - - - - - checkstyle - - validate - - - - - org.glassfish.copyright - glassfish-copyright-maven-plugin - 1.39 - - ${basedir}/../etc/config/copyright-exclude - - git - - false - - true - - true - - false - - false - - - - maven-surefire-plugin - ${maven.surefire.plugin.version} - - --add-modules jakarta.xml.bind - - - - maven-compiler-plugin - ${maven.compiler.plugin.version} - -
-
org.apache.felix @@ -331,6 +60,15 @@ maven-checkstyle-plugin + + maven-surefire-plugin + + + + true + + + org.glassfish.copyright glassfish-copyright-maven-plugin @@ -343,65 +81,96 @@
+ + jakarta.activation + jakarta.activation-api + provided + + + jakarta.inject + jakarta.inject-api + + + jakarta.enterprise + jakarta.enterprise.cdi-api + jakarta.xml.bind jakarta.xml.bind-api - ${jaxb.api.version} - provided - true - jakarta.activation - jakarta.activation-api - ${activation.api.version} - provided + org.junit.jupiter + junit-jupiter-api + test + + + + org.glassfish.jaxb + codemodel + test + + + org.glassfish.jaxb + jaxb-core + test + + + org.glassfish.jaxb + jaxb-jxc + test org.glassfish.jaxb jaxb-runtime - ${jaxb.impl.version} test - org.junit.jupiter - junit-jupiter-api - 5.8.0-M1 + org.glassfish.jaxb + txw2 test + + org.glassfish.jaxb + jaxb-xjc + test + + + org.glassfish.jaxb + xsom + test + + + + com.sun.istack + istack-commons-runtime + test + + + com.sun.istack + istack-commons-tools + test + + + com.sun.xml.bind.external + relaxng-datatype + test + + + com.sun.xml.bind.external + rngom + test + + org.hamcrest hamcrest - 2.2 test org.mockito mockito-core - 3.11.1 test - - Jakarta RESTful Web Services ${spec.version} API Specification ${spec.version.revision} - 11 - - 5.1.2 - 3.10.1 - ${java.version} - 3.3.0 - 3.0.0-M7 - - jakarta.ws.rs - UTF-8 - false - 3.1 - - - 4.0.0 - 4.0.0 - 2.1.0 - ${project.basedir}/.. - - diff --git a/jaxrs-spec/README.md b/jaxrs-spec/README.md index 6dcceccc0..6699c1ef0 100644 --- a/jaxrs-spec/README.md +++ b/jaxrs-spec/README.md @@ -8,7 +8,7 @@ Building Prerequisites: -* JDK 11+ +* JDK 17+ * Maven 3.6.3+ Run the full build: diff --git a/jaxrs-spec/pom.xml b/jaxrs-spec/pom.xml index 7395c62cb..907f42d7c 100644 --- a/jaxrs-spec/pom.xml +++ b/jaxrs-spec/pom.xml @@ -1,7 +1,7 @@ - org.netbeans.tools - sigtest-maven-plugin - 1.4 + org.junit.jupiter + junit-jupiter + test + + + + + maven-compiler-plugin + + + maven-surefire-plugin + + + maven-jar-plugin + + + maven-source-plugin + + + attach-sources + + jar + + + + + + + + + + + record-signature + + false + + + + + jakarta.tck + sigtest-maven-plugin + 2.2 + + + + generate + + + + + ${project.build.directory}/jakarta.ws.rs.sig_${project.parent.version} + + jakarta.ws.rs, + jakarta.ws.rs.client, + jakarta.ws.rs.core, + jakarta.ws.rs.container, + jakarta.ws.rs.ext, + jakarta.ws.rs.sse + + false + + + + + + \ No newline at end of file diff --git a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/common/JAXRSCommonClient.java b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/common/JAXRSCommonClient.java index e50a1f2b0..d5c06b142 100644 --- a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/common/JAXRSCommonClient.java +++ b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/common/JAXRSCommonClient.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2021 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2007, 2024 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 @@ -715,29 +715,29 @@ protected void clearProperty(Property key) { assertEquals(T first, T second, Object... message) { if (first == null && second == null) return; - assertFalse(first == null && second != null, message.toString()); - assertFalse(first != null && second == null, message.toString()); + assertFalse(first == null && second != null, objectsToString(message)); + assertFalse(first != null && second == null, objectsToString(message)); if (first instanceof Comparable) - assertTrue(((Comparable) first).compareTo(second) == 0, message.toString()); + assertTrue(((Comparable) first).compareTo(second) == 0, objectsToString(message)); else - assertTrue(first.equals(second), message.toString()); + assertTrue(first.equals(second), objectsToString(message)); } public static void // assertEqualsInt(int first, int second, Object... message) { - assertTrue(first == second, message.toString()); + assertTrue(first == second, objectsToString(message)); } public static void // assertEqualsLong(long first, long second, Object... message) { - assertTrue(first == second, message.toString()); + assertTrue(first == second, objectsToString(message)); } public static void // assertEqualsBool(boolean first, boolean second, Object... message) { - assertTrue(first == second, message.toString()); + assertTrue(first == second, objectsToString(message)); } /** @@ -751,7 +751,7 @@ protected void clearProperty(Property key) { */ public static void // assertNull(Object object, Object... message) { - assertTrue(object == null, message.toString()); + assertTrue(object == null, objectsToString(message)); } /** @@ -765,7 +765,7 @@ protected void clearProperty(Property key) { */ public static void // assertNotNull(Object object, Object... message) { - assertTrue(object != null, message.toString()); + assertTrue(object != null, objectsToString(message)); } /** @@ -795,7 +795,7 @@ public static void fault(Object... objects) throws Fault { */ public static void assertContains(String string, String substring, Object... message) { - assertTrue(string.contains(substring), message.toString()); + assertTrue(string.contains(substring), objectsToString(message)); } /** @@ -812,7 +812,7 @@ public static void assertContains(String string, String substring, */ public static void assertContainsIgnoreCase(String string, String substring, Object... message) { - assertTrue(string.toLowerCase().contains(substring.toLowerCase()), message.toString()); + assertTrue(string.toLowerCase().contains(substring.toLowerCase()), objectsToString(message)); } /** @@ -828,7 +828,7 @@ public static void assertContainsIgnoreCase(String string, String substring, */ public static void assertContains(T text, T subtext, Object... message) { - assertContains(text.toString(), subtext.toString(), message.toString()); + assertContains(text.toString(), subtext.toString(), objectsToString(message)); } /** @@ -845,7 +845,7 @@ public static void assertContains(T text, T subtext, Object... message) */ public static void assertContainsIgnoreCase(T text, T subtext, Object... message) { - assertContainsIgnoreCase(text.toString(), subtext.toString(), message.toString()); + assertContainsIgnoreCase(text.toString(), subtext.toString(), objectsToString(message)); } /** diff --git a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/container/responsecontext/ResponseFilter.java b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/container/responsecontext/ResponseFilter.java index 0bf416f1b..7c7c3c929 100644 --- a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/container/responsecontext/ResponseFilter.java +++ b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/container/responsecontext/ResponseFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012, 2023 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012, 2024 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 @@ -317,6 +317,11 @@ public synchronized void write(byte[] b, int off, int len) write(b); } + @Override + public void close() throws IOException { + stream.close(); + } + public final byte[] intToByteArray(int value) { return new byte[] { (byte) (value & 0xff) }; } diff --git a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/uriinfo/JAXRSClientIT.java b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/uriinfo/JAXRSClientIT.java index 3fbaaa58c..52a001c55 100644 --- a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/uriinfo/JAXRSClientIT.java +++ b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/uriinfo/JAXRSClientIT.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2007, 2018 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2007, 2024 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 @@ -34,6 +34,7 @@ import org.junit.jupiter.api.TestInfo; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.Disabled; /* * @class.setup_props: webServerHost; @@ -414,6 +415,7 @@ public void getMatchedURIsTest2() throws Fault { * obtained from an injected UriInfo */ @Test + @Disabled public void getNormalizedUriTest() throws Fault { setProperty(Property.REQUEST, buildRequest(GET, URIInfoTest.DECODED)); invoke(); diff --git a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/jaxrs21/ee/sse/ssebroadcaster/JAXRSClientIT.java b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/jaxrs21/ee/sse/ssebroadcaster/JAXRSClientIT.java index 2a6e1dd92..677e89514 100644 --- a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/jaxrs21/ee/sse/ssebroadcaster/JAXRSClientIT.java +++ b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/jaxrs21/ee/sse/ssebroadcaster/JAXRSClientIT.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2017, 2024 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 @@ -17,6 +17,7 @@ package ee.jakarta.tck.ws.rs.jaxrs21.ee.sse.ssebroadcaster; import java.util.List; +import java.util.ArrayList; import java.io.InputStream; import java.io.IOException; @@ -188,17 +189,20 @@ public void sseBroadcastTest() throws Fault { } } - for (int i = 0; i != CLIENTS; i++) { - List events = clients[i].getEvents(); - assertEquals(events.size(), MSG_MAX + 1, - "Received unexpected number of events", events.size()); - assertTrue(events.get(0).contains("WELCOME"), - "Received unexpected message"+ events.get(0)); - for (int j = 0; j != MSG_MAX; j++) - assertEquals(events.get(j + 1), SSEMessage.MESSAGE + j, - "Received unexpected message", events.get(j + 1)); + List expectedEvents = new ArrayList(); + for (int j = 0; j != MSG_MAX; j++) { + expectedEvents.add(SSEMessage.MESSAGE + j); } + for (int i = 0; i != CLIENTS; i++) { + List events = clients[i].getEvents(); + assertEquals(events.size(), MSG_MAX + 1, + "Received unexpected number of events", events.size()); + assertTrue(events.get(0).contains("WELCOME"), + "Received unexpected message"+ events.get(0)); + assertTrue(events.containsAll(expectedEvents), "An expected message was not received"); + } + setProperty(Property.REQUEST, buildRequest(Request.GET, "broadcast/check")); invoke(); String response = getResponseBody(); diff --git a/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/jakarta.ws.rs.sig_3.1.0 b/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/jakarta.ws.rs.sig_4.0.0 similarity index 98% rename from jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/jakarta.ws.rs.sig_3.1.0 rename to jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/jakarta.ws.rs.sig_4.0.0 index 9838fc9e4..db05c75e2 100644 --- a/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/jakarta.ws.rs.sig_3.1.0 +++ b/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/jakarta.ws.rs.sig_4.0.0 @@ -1,5 +1,5 @@ #Signature file v4.1 -#Version 3.1.0 +#Version 4.0.0 CLSS public abstract interface !annotation jakarta.ws.rs.ApplicationPath anno 0 java.lang.annotation.Documented() @@ -507,6 +507,7 @@ supr java.lang.Object hcls CreateErrorMessageAction CLSS public abstract interface jakarta.ws.rs.client.ClientRequestContext +meth public abstract boolean containsHeaderString(java.lang.String,java.lang.String,java.util.function.Predicate) meth public abstract boolean hasEntity() meth public abstract jakarta.ws.rs.client.Client getClient() meth public abstract jakarta.ws.rs.core.Configuration getConfiguration() @@ -536,12 +537,14 @@ meth public abstract void setEntityStream(java.io.OutputStream) meth public abstract void setMethod(java.lang.String) meth public abstract void setProperty(java.lang.String,java.lang.Object) meth public abstract void setUri(java.net.URI) +meth public boolean containsHeaderString(java.lang.String,java.util.function.Predicate) meth public boolean hasProperty(java.lang.String) CLSS public abstract interface jakarta.ws.rs.client.ClientRequestFilter meth public abstract void filter(jakarta.ws.rs.client.ClientRequestContext) throws java.io.IOException CLSS public abstract interface jakarta.ws.rs.client.ClientResponseContext +meth public abstract boolean containsHeaderString(java.lang.String,java.lang.String,java.util.function.Predicate) meth public abstract boolean hasEntity() meth public abstract boolean hasLink(java.lang.String) meth public abstract int getLength() @@ -564,6 +567,7 @@ meth public abstract java.util.Set getAllowedMethods() meth public abstract void setEntityStream(java.io.InputStream) meth public abstract void setStatus(int) meth public abstract void setStatusInfo(jakarta.ws.rs.core.Response$StatusType) +meth public boolean containsHeaderString(java.lang.String,java.util.function.Predicate) CLSS public abstract interface jakarta.ws.rs.client.ClientResponseFilter meth public abstract void filter(jakarta.ws.rs.client.ClientRequestContext,jakarta.ws.rs.client.ClientResponseContext) throws java.io.IOException @@ -743,6 +747,8 @@ meth public abstract jakarta.ws.rs.client.WebTarget resolveTemplatesFromEncoded( meth public abstract jakarta.ws.rs.core.UriBuilder getUriBuilder() meth public abstract java.net.URI getUri() +CLSS abstract interface jakarta.ws.rs.client.package-info + CLSS public abstract interface jakarta.ws.rs.container.AsyncResponse fld public final static long NO_TIMEOUT = 0 meth public abstract !varargs java.util.Map,java.util.Collection>> register(java.lang.Class,java.lang.Class[]) @@ -767,6 +773,7 @@ CLSS public abstract interface jakarta.ws.rs.container.ConnectionCallback meth public abstract void onDisconnect(jakarta.ws.rs.container.AsyncResponse) CLSS public abstract interface jakarta.ws.rs.container.ContainerRequestContext +meth public abstract boolean containsHeaderString(java.lang.String,java.lang.String,java.util.function.Predicate) meth public abstract boolean hasEntity() meth public abstract int getLength() meth public abstract jakarta.ws.rs.core.MediaType getMediaType() @@ -792,12 +799,14 @@ meth public abstract void setProperty(java.lang.String,java.lang.Object) meth public abstract void setRequestUri(java.net.URI) meth public abstract void setRequestUri(java.net.URI,java.net.URI) meth public abstract void setSecurityContext(jakarta.ws.rs.core.SecurityContext) +meth public boolean containsHeaderString(java.lang.String,java.util.function.Predicate) meth public boolean hasProperty(java.lang.String) CLSS public abstract interface jakarta.ws.rs.container.ContainerRequestFilter meth public abstract void filter(jakarta.ws.rs.container.ContainerRequestContext) throws java.io.IOException CLSS public abstract interface jakarta.ws.rs.container.ContainerResponseContext +meth public abstract boolean containsHeaderString(java.lang.String,java.lang.String,java.util.function.Predicate) meth public abstract boolean hasEntity() meth public abstract boolean hasLink(java.lang.String) meth public abstract int getLength() @@ -827,6 +836,7 @@ meth public abstract void setEntity(java.lang.Object,java.lang.annotation.Annota meth public abstract void setEntityStream(java.io.OutputStream) meth public abstract void setStatus(int) meth public abstract void setStatusInfo(jakarta.ws.rs.core.Response$StatusType) +meth public boolean containsHeaderString(java.lang.String,java.util.function.Predicate) CLSS public abstract interface jakarta.ws.rs.container.ContainerResponseFilter meth public abstract void filter(jakarta.ws.rs.container.ContainerRequestContext,jakarta.ws.rs.container.ContainerResponseContext) throws java.io.IOException @@ -857,6 +867,8 @@ intf java.lang.annotation.Annotation CLSS public abstract interface jakarta.ws.rs.container.TimeoutHandler meth public abstract void handleTimeout(jakarta.ws.rs.container.AsyncResponse) +CLSS abstract interface jakarta.ws.rs.container.package-info + CLSS public abstract jakarta.ws.rs.core.AbstractMultivaluedMap<%0 extends java.lang.Object, %1 extends java.lang.Object> cons public init(java.util.Map<{jakarta.ws.rs.core.AbstractMultivaluedMap%0},java.util.List<{jakarta.ws.rs.core.AbstractMultivaluedMap%1}>>) fld protected final java.util.Map<{jakarta.ws.rs.core.AbstractMultivaluedMap%0},java.util.List<{jakarta.ws.rs.core.AbstractMultivaluedMap%1}>> store @@ -1114,6 +1126,7 @@ fld public final static java.lang.String SET_COOKIE = "Set-Cookie" fld public final static java.lang.String USER_AGENT = "User-Agent" fld public final static java.lang.String VARY = "Vary" fld public final static java.lang.String WWW_AUTHENTICATE = "WWW-Authenticate" +meth public abstract boolean containsHeaderString(java.lang.String,java.lang.String,java.util.function.Predicate) meth public abstract int getLength() meth public abstract jakarta.ws.rs.core.MediaType getMediaType() meth public abstract jakarta.ws.rs.core.MultivaluedMap getRequestHeaders() @@ -1124,6 +1137,7 @@ meth public abstract java.util.List getRequestHeader(java.lang meth public abstract java.util.List getAcceptableLanguages() meth public abstract java.util.Locale getLanguage() meth public abstract java.util.Map getCookies() +meth public boolean containsHeaderString(java.lang.String,java.util.function.Predicate) CLSS public abstract jakarta.ws.rs.core.Link cons public init() @@ -1199,6 +1213,7 @@ fld public final static jakarta.ws.rs.core.MediaType APPLICATION_JSON_PATCH_JSON fld public final static jakarta.ws.rs.core.MediaType APPLICATION_JSON_TYPE fld public final static jakarta.ws.rs.core.MediaType APPLICATION_OCTET_STREAM_TYPE fld public final static jakarta.ws.rs.core.MediaType APPLICATION_SVG_XML_TYPE + anno 0 java.lang.Deprecated(boolean forRemoval=true, java.lang.String since="") fld public final static jakarta.ws.rs.core.MediaType APPLICATION_XHTML_XML_TYPE fld public final static jakarta.ws.rs.core.MediaType APPLICATION_XML_TYPE fld public final static jakarta.ws.rs.core.MediaType MULTIPART_FORM_DATA_TYPE @@ -1213,6 +1228,7 @@ fld public final static java.lang.String APPLICATION_JSON = "application/json" fld public final static java.lang.String APPLICATION_JSON_PATCH_JSON = "application/json-patch+json" fld public final static java.lang.String APPLICATION_OCTET_STREAM = "application/octet-stream" fld public final static java.lang.String APPLICATION_SVG_XML = "application/svg+xml" + anno 0 java.lang.Deprecated(boolean forRemoval=true, java.lang.String since="") fld public final static java.lang.String APPLICATION_XHTML_XML = "application/xhtml+xml" fld public final static java.lang.String APPLICATION_XML = "application/xml" fld public final static java.lang.String CHARSET_PARAMETER = "charset" @@ -1636,6 +1652,8 @@ meth public abstract java.util.List build() meth public static jakarta.ws.rs.core.Variant$VariantListBuilder newInstance() supr java.lang.Object +CLSS abstract interface jakarta.ws.rs.core.package-info + CLSS public abstract interface jakarta.ws.rs.ext.ContextResolver<%0 extends java.lang.Object> meth public abstract {jakarta.ws.rs.ext.ContextResolver%0} getContext(java.lang.Class) @@ -1739,6 +1757,10 @@ meth public abstract void proceed() throws java.io.IOException meth public abstract void setEntity(java.lang.Object) meth public abstract void setOutputStream(java.io.OutputStream) +CLSS abstract interface jakarta.ws.rs.ext.package-info + +CLSS abstract interface jakarta.ws.rs.package-info + CLSS public abstract interface jakarta.ws.rs.sse.InboundSseEvent intf jakarta.ws.rs.sse.SseEvent meth public abstract <%0 extends java.lang.Object> {%%0} readData(jakarta.ws.rs.core.GenericType<{%%0}>) @@ -1795,7 +1817,7 @@ CLSS public abstract interface jakarta.ws.rs.sse.SseEventSink intf java.lang.AutoCloseable meth public abstract boolean isClosed() meth public abstract java.util.concurrent.CompletionStage send(jakarta.ws.rs.sse.OutboundSseEvent) -meth public abstract void close() +meth public abstract void close() throws java.io.IOException CLSS public abstract interface jakarta.ws.rs.sse.SseEventSource innr public abstract static Builder @@ -1818,6 +1840,8 @@ meth public abstract jakarta.ws.rs.sse.SseEventSource build() meth public abstract jakarta.ws.rs.sse.SseEventSource$Builder reconnectingEvery(long,java.util.concurrent.TimeUnit) supr java.lang.Object +CLSS abstract interface jakarta.ws.rs.sse.package-info + CLSS public abstract jakarta.xml.bind.annotation.adapters.XmlAdapter<%0 extends java.lang.Object, %1 extends java.lang.Object> cons protected init() meth public abstract {jakarta.xml.bind.annotation.adapters.XmlAdapter%0} marshal({jakarta.xml.bind.annotation.adapters.XmlAdapter%1}) throws java.lang.Exception @@ -1850,8 +1874,10 @@ meth public abstract !hasdefault java.lang.String since() CLSS public abstract java.lang.Enum<%0 extends java.lang.Enum<{java.lang.Enum%0}>> cons protected init(java.lang.String,int) +innr public final static EnumDesc intf java.io.Serializable intf java.lang.Comparable<{java.lang.Enum%0}> +intf java.lang.constant.Constable meth protected final java.lang.Object clone() throws java.lang.CloneNotSupportedException meth protected final void finalize() meth public final boolean equals(java.lang.Object) @@ -1860,6 +1886,7 @@ meth public final int hashCode() meth public final int ordinal() meth public final java.lang.Class<{java.lang.Enum%0}> getDeclaringClass() meth public final java.lang.String name() +meth public final java.util.Optional> describeConstable() meth public java.lang.String toString() meth public static <%0 extends java.lang.Enum<{%%0}>> {%%0} valueOf(java.lang.Class<{%%0}>,java.lang.String) supr java.lang.Object @@ -1954,6 +1981,9 @@ CLSS public abstract interface !annotation java.lang.annotation.Target intf java.lang.annotation.Annotation meth public abstract java.lang.annotation.ElementType[] value() +CLSS public abstract interface java.lang.constant.Constable +meth public abstract java.util.Optional describeConstable() + CLSS public abstract interface java.util.Map<%0 extends java.lang.Object, %1 extends java.lang.Object> innr public abstract interface static Entry meth public !varargs static <%0 extends java.lang.Object, %1 extends java.lang.Object> java.util.Map<{%%0},{%%1}> ofEntries(java.util.Map$Entry[]) @@ -1996,3 +2026,4 @@ meth public {java.util.Map%1} getOrDefault(java.lang.Object,{java.util.Map%1}) meth public {java.util.Map%1} merge({java.util.Map%0},{java.util.Map%1},java.util.function.BiFunction) meth public {java.util.Map%1} putIfAbsent({java.util.Map%0},{java.util.Map%1}) meth public {java.util.Map%1} replace({java.util.Map%0},{java.util.Map%1}) + diff --git a/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/sig-test.map b/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/sig-test.map index 895b2bed7..caa8640d4 100644 --- a/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/sig-test.map +++ b/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/signaturetest/sig-test.map @@ -1,5 +1,5 @@ # -# Copyright (c) 2018, 2020 Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2018, 2024 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 @@ -17,4 +17,4 @@ ############################################################### # The signature test mapping file for the JAX-RS TCK. ############################################################### -jakarta.ws.rs=3.1.0 +jakarta.ws.rs=4.0.0 diff --git a/jersey-tck/pom.xml b/jersey-tck/pom.xml index 5ab7e8b9b..ef76456cb 100644 --- a/jersey-tck/pom.xml +++ b/jersey-tck/pom.xml @@ -22,13 +22,13 @@ org.glassfish.jersey.core jersey-tck - 3.1.2 + 4.0.0-SNAPSHOT jar jakarta.ws.rs all - 3.1.0 + 4.0.0-SNAPSHOT Jakarta RESTful WS Compliance @@ -42,7 +42,7 @@ ${project.build.directory}/glassfish6 10.0.0-RC1 5.7.2 - 3.1.0 + 4.0.0-SNAPSHOT jakarta-restful-ws-tck @@ -179,7 +179,6 @@ - org.apache.maven.plugins maven-dependency-plugin 3.2.0 diff --git a/pom.xml b/pom.xml index e8bf7661f..4938d3c63 100644 --- a/pom.xml +++ b/pom.xml @@ -1,7 +1,7 @@ + + 2.1.1 + 2.0.0 + 2.0.0 + 3.0.0 + 2.0.0 + 4.0.0 + 3.0.0 + 5.8.2 + 4.0.3 + 4.1.2 + 2.2 + 3.6.0 + + + + jaxrs-api + examples + jaxrs-spec + jaxrs-tck + + + + + + org.junit + junit-bom + ${junit.version} + pom + import + + + jakarta.annotation + jakarta.annotation-api + ${annotation.api.version} + + + jakarta.activation + jakarta.activation-api + ${activation.api.version} + + + jakarta.inject + jakarta.inject-api + ${inject.api.version} + + + jakarta.enterprise + jakarta.enterprise.cdi-api + ${cdi.api.version} + + + jakarta.validation + jakarta.validation-api + ${validation.api.version} + + + jakarta.enterprise.concurrent + jakarta.enterprise.concurrent-api + ${concurrent.api.version} + + + jakarta.xml.bind + jakarta.xml.bind-api + ${xml.binding.api.version} + + + + org.glassfish.jaxb + codemodel + ${org.glassfish.jaxb.version} + + + * + * + + + + + org.glassfish.jaxb + jaxb-core + ${org.glassfish.jaxb.version} + + + * + * + + + + + org.glassfish.jaxb + jaxb-jxc + ${org.glassfish.jaxb.version} + + + * + * + + + + + org.glassfish.jaxb + jaxb-runtime + ${org.glassfish.jaxb.version} + + + * + * + + + + + org.glassfish.jaxb + txw2 + ${org.glassfish.jaxb.version} + + + * + * + + + + + org.glassfish.jaxb + jaxb-xjc + ${org.glassfish.jaxb.version} + + + * + * + + + + + org.glassfish.jaxb + xsom + ${org.glassfish.jaxb.version} + + + * + * + + + + + + com.sun.istack + istack-commons-runtime + ${com.sun.istack.version} + + + * + * + + + + + com.sun.istack + istack-commons-tools + ${com.sun.istack.version} + + + * + * + + + + + com.sun.xml.bind.external + relaxng-datatype + ${org.glassfish.jaxb.version} + + + com.sun.xml.bind.external + rngom + ${org.glassfish.jaxb.version} + + + relaxngDatatype + relaxngDatatype + + + com.sun.xml.bind.external + relaxng-datatype + + + + + + org.hamcrest + hamcrest + ${hamcrest.version} + + + org.mockito + mockito-core + ${mockito.version} + + + + + + ${project.artifactId} + + + + maven-compiler-plugin + 3.11.0 + + + maven-jar-plugin + 3.3.0 + + + maven-surefire-plugin + 3.2.5 + + + org.codehaus.mojo + buildnumber-maven-plugin + 1.4 + + {0,date,MM/dd/yyyy hh:mm aa} + + timestamp + + + + + validate + + create + + + + + + org.apache.felix + maven-bundle-plugin + ${maven.bundle.plugin.version} + true + + + <_failok>true + ${buildNumber} + Jakarta RESTful Web Services API (JAX-RS) + ${project.version} + jakarta.ws.rs-api + * + ${api.package} + ${project.version} + ${spec.version} + Eclipse Foundation + ${spec.version} + <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@))) + <_nodefaultversion>false + osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=1.8))" + + + + + osgi-bundle + package + + bundle + + + + + + maven-javadoc-plugin + ${maven.javadoc.plugin.version} + + ${apidocs.title} + true + + Copyright © 2018, 2024 Eclipse Foundation.
Use is subject to license terms.]]> +
+ true + + module-info.java + +
+ + + attach-javadocs + + jar + + + +
+ + maven-source-plugin + 3.2.1 + + + attach-sources + + jar-no-fork + + + + + + org.codehaus.mojo + build-helper-maven-plugin + 3.2.0 + + + add-legal-resource + generate-resources + + add-resource + + + + + ${legal.doc.folder} + + NOTICE.md + LICENSE.md + + META-INF + + + + + + + + maven-jxr-plugin + 2.5 + + + + jxr + + validate + + + + + maven-checkstyle-plugin + 3.1.2 + + ${project.build.directory}/checkstyle + ${project.build.directory}/checkstyle/checkstyle-result.xml + ${basedir}/../etc/config/checkstyle.xml + **/module-info.java + + + + + checkstyle + + validate + + + + + org.glassfish.copyright + glassfish-copyright-maven-plugin + 1.39 + + ${basedir}/../etc/config/copyright-exclude + + git + + false + + true + + true + + false + + false + + +
+
+ + + maven-enforcer-plugin + + + enforce-java-version + + enforce + + + + + To build this project JDK ${jdk.min.version} (or greater) is required. + ${jdk.min.version} + + + + + + + +
@@ -47,20 +512,6 @@ - - dependentModules - - true - - jaxrs.all.build - - - - jaxrs-api - jaxrs-tck - examples - - dependentSpecification