From eabcdf3101b11c2fbe5c7491238c7b22bc6917a9 Mon Sep 17 00:00:00 2001 From: Eduardo Martins Date: Mon, 4 Nov 2024 15:14:26 +0000 Subject: [PATCH] [WFLY-19804] replaces JAX-RS references with Jakarta REST --- README-source.adoc | 10 +++---- batch-processing/pom.xml | 2 +- ejb-throws-exception/web/pom.xml | 2 +- ejb-txn-remote-call/client/pom.xml | 2 +- .../as/quickstarts/ejb/entity/CallerUser.java | 2 +- ejb-txn-remote-call/server/pom.xml | 2 +- guide/KitchensinkQuickstart.asciidoc | 26 ++++++++--------- jaxrs-client/README-source.adoc | 2 +- jaxrs-client/pom.xml | 2 +- jaxrs-jwt/README-source.adoc | 2 +- jsonp/pom.xml | 2 +- kitchensink/README-source.adoc | 4 +-- kitchensink/pom.xml | 2 +- .../kitchensink/rest/JaxRsActivator.java | 2 +- .../rest/MemberResourceRESTService.java | 8 +++--- microprofile-config/README-source.adoc | 2 +- .../README-source.adoc | 4 +-- .../faulttolerance/CoffeeResource.java | 2 +- microprofile-jwt/README-source.adoc | 16 +++++------ microprofile-jwt/pom.xml | 2 +- microprofile-lra/README-source.adoc | 28 +++++++++---------- microprofile-openapi/README-source.adoc | 2 +- .../README-source.adoc | 14 +++++----- microprofile-reactive-messaging-kafka/pom.xml | 2 +- spring-resteasy/pom.xml | 2 +- .../webapp/WEB-INF/applicationContext.xml | 4 +-- .../src/test/resources/applicationContext.xml | 4 +-- thread-racing/README-source.adoc | 6 ++-- thread-racing/pom.xml | 2 +- .../as/quickstarts/threadracing/Racer.java | 12 ++++---- .../stage/jaxrs/BoxApplication.java | 2 +- .../stage/jaxrs/JAXRSRaceStage.java | 4 +-- todo-backend/README-source.adoc | 8 +++--- todo-backend/README.adoc | 2 +- 34 files changed, 94 insertions(+), 94 deletions(-) diff --git a/README-source.adoc b/README-source.adoc index 6fdaa4282e..b9e5f271d3 100644 --- a/README-source.adoc +++ b/README-source.adoc @@ -141,14 +141,14 @@ NOTE: Some of these quickstarts use the H2 database included with {productNameFu | link:helloworld-ws/README{outfilesuffix}[helloworld-ws]|JAX-WS | Yes | The `helloworld-ws` quickstart demonstrates a simple Hello World application, bundled and deployed as a WAR, that uses JAX-WS to say Hello. | Beginner | _none_ | link:hibernate/README{outfilesuffix}[hibernate]|Hibernate | Yes | The `hibernate` quickstart demonstrates how to use Hibernate ORM 6 over Persistence, using Bean Validation, and Enterprise Beans. | Intermediate | _none_ | link:http-custom-mechanism/README{outfilesuffix}[http-custom-mechanism]|EJB, Security | No | The `http-custom-mechanism` quickstart demonstrates how to implement a custom HTTP authentication mechanism that can be registered with Elytron. | Intermediate | _none_ -| link:jaxrs-client/README{outfilesuffix}[jaxrs-client]|JAX-RS | Yes | The `jaxrs-client` quickstart demonstrates Jakarta REST Client API, which interacts with a Jakarta REST Web service that runs on {productName}. | Beginner | _none_ -| link:jaxrs-jwt/README{outfilesuffix}[jaxrs-jwt]|JAX-RS, Security | Yes | The `jaxrs-jwt` quickstart demonstrates a Jakarta REST secured application using JSON Web Tokens (JWT) with Elytron. | Intermediate | _none_ +| link:jaxrs-client/README{outfilesuffix}[jaxrs-client]|Jakarta REST | Yes | The `jaxrs-client` quickstart demonstrates Jakarta REST Client API, which interacts with a Jakarta REST Web service that runs on {productName}. | Beginner | _none_ +| link:jaxrs-jwt/README{outfilesuffix}[jaxrs-jwt]|Jakarta REST, Security | Yes | The `jaxrs-jwt` quickstart demonstrates a Jakarta REST secured application using JSON Web Tokens (JWT) with Elytron. | Intermediate | _none_ | link:jaxws-ejb/README{outfilesuffix}[jaxws-ejb]|JAX-WS | Yes | The `jaxws-ejb` quickstart is a working example of the web service endpoint created from an EJB. | Beginner | _none_ | link:jaxws-retail/README{outfilesuffix}[jaxws-retail]|JAX-WS | Yes | The `jaxws-retail` quickstart is a working example of a simple web service endpoint. | Beginner | _none_ | link:jsonp/README{outfilesuffix}[jsonp]|CDI, JSF, JSON-P | Yes | The `jsonp` quickstart demonstrates how to use the JSON-P API to produce object-based structures and then parse and consume them as stream-based JSON strings. | Beginner | _none_ | link:jta-crash-rec/README{outfilesuffix}[jta-crash-rec]|JTA, Crash Recovery | No | The `jta-crash-rec` quickstart uses JTA and Byteman to show how to code distributed (XA) transactions in order to preserve ACID properties on server crash. | Advanced | _none_ | link:jts/README{outfilesuffix}[jts]|JTS, EJB, JMS | No | The `jts` quickstart shows how to use JTS to perform distributed transactions across multiple containers, fulfilling the properties of an ACID transaction. | Intermediate | link:cmt/README.html[cmt] -| link:kitchensink/README{outfilesuffix}[kitchensink]|CDI, JSF, JPA, EJB, JAX-RS, BV | Yes | The `kitchensink` quickstart demonstrates a localized {javaVersion} web-enabled database application using JSF, CDI, EJB, JPA, and Bean Validation. | Intermediate | _none_ +| link:kitchensink/README{outfilesuffix}[kitchensink]|CDI, JSF, JPA, EJB, Jakarta REST, BV | Yes | The `kitchensink` quickstart demonstrates a localized {javaVersion} web-enabled database application using JSF, CDI, EJB, JPA, and Bean Validation. | Intermediate | _none_ | link:logging/README{outfilesuffix}[logging]|Logging | Yes | The `logging` quickstart demonstrates how to configure different logging levels in {productName}. | Intermediate | _none_ | link:mail/README{outfilesuffix}[mail]|JavaMail, CDI, JSF | No | The `mail` quickstart demonstrates how to send and receive emails using CDI and JSF and with custom Mail provider configured in {productName}. | Beginner | _none_ | link:messaging-clustering-singleton/README{outfilesuffix}[messaging-clustering-singleton]|JMS, MDB, Clustering | No | The `messaging-clustering-singleton` quickstart uses a JMS topic and a queue to demonstrate clustering using {productName} messaging with MDB singleton configuration where only one node in the cluster will be active. | Advanced | _none_ @@ -171,8 +171,8 @@ NOTE: Some of these quickstarts use the H2 database included with {productNameFu | link:spring-resteasy/README{outfilesuffix}[spring-resteasy]|Resteasy, Spring | Yes | The `spring-resteasy` quickstart demonstrates how to package and deploy a web application that includes resteasy-spring integration. | Beginner | _none_ | link:tasks-jsf/README{outfilesuffix}[tasks-jsf]|JSF, JPA | Yes | The `tasks-jsf` quickstart demonstrates how to use JPA persistence with JSF as the view layer. | Intermediate | _none_ | link:temperature-converter/README{outfilesuffix}[temperature-converter]|CDI, JSF, SLSB EJB | Yes | The `temperature-converter` quickstart does temperature conversion using an EJB Stateless Session Bean (SLSB), CDI, and a JSF front-end client. | Beginner | _none_ -| link:thread-racing/README{outfilesuffix}[thread-racing]|Batch, CDI, EE Concurrency, JAX-RS, JMS, JPA, JSON, Web Sockets | Yes | A thread racing web application that demonstrates technologies introduced or updated in the latest Jakarta EE specification. | Beginner | _none_ -| link:todo-backend/README{outfilesuffix}[todo-backend]|JPA, JAX-RS, OpenShift, Galleon | Yes | The `todo-backend` quickstart demonstrates how to implement a backend that exposes a HTTP API with JAX-RS | Intermediate | _none_ +| link:thread-racing/README{outfilesuffix}[thread-racing]|Batch, CDI, EE Concurrency, Jakarta REST, JMS, JPA, JSON, Web Sockets | Yes | A thread racing web application that demonstrates technologies introduced or updated in the latest Jakarta EE specification. | Beginner | _none_ +| link:todo-backend/README{outfilesuffix}[todo-backend]|JPA, Jakarta REST, OpenShift, Galleon | Yes | The `todo-backend` quickstart demonstrates how to implement a backend that exposes a HTTP API with Jakarta REST | Intermediate | _none_ | link:websocket-endpoint/README{outfilesuffix}[websocket-endpoint]|CDI, WebSocket, JSON-P | Yes | Shows how to use WebSockets with JSON to broadcast information to all open WebSocket sessions in {productName}. | Beginner | _none_ | link:websocket-hello/README{outfilesuffix}[websocket-hello]|WebSocket, CDI, JSF | Yes | The `websocket-hello` quickstart demonstrates how to create a simple WebSocket application. | Beginner | _none_ |=== diff --git a/batch-processing/pom.xml b/batch-processing/pom.xml index c04088700e..78ea80b76b 100644 --- a/batch-processing/pom.xml +++ b/batch-processing/pom.xml @@ -157,7 +157,7 @@ provided - jakarta.ws.rs diff --git a/ejb-throws-exception/web/pom.xml b/ejb-throws-exception/web/pom.xml index 1169bada79..2f207d2ff0 100644 --- a/ejb-throws-exception/web/pom.xml +++ b/ejb-throws-exception/web/pom.xml @@ -69,7 +69,7 @@ provided - jakarta.ws.rs diff --git a/ejb-txn-remote-call/client/pom.xml b/ejb-txn-remote-call/client/pom.xml index b447893d84..972d2c9f6e 100644 --- a/ejb-txn-remote-call/client/pom.xml +++ b/ejb-txn-remote-call/client/pom.xml @@ -122,7 +122,7 @@ jakarta.enterprise.cdi-api provided - + jakarta.ws.rs jakarta.ws.rs-api diff --git a/ejb-txn-remote-call/client/src/main/java/org/jboss/as/quickstarts/ejb/entity/CallerUser.java b/ejb-txn-remote-call/client/src/main/java/org/jboss/as/quickstarts/ejb/entity/CallerUser.java index 6d0289b5e9..115619665c 100644 --- a/ejb-txn-remote-call/client/src/main/java/org/jboss/as/quickstarts/ejb/entity/CallerUser.java +++ b/ejb-txn-remote-call/client/src/main/java/org/jboss/as/quickstarts/ejb/entity/CallerUser.java @@ -23,7 +23,7 @@ import jakarta.xml.bind.annotation.XmlRootElement; /** - * Hibernate entity and JSON element to be returned from a JAX-RS method. + * Hibernate entity and JSON element to be returned from a Jakarta REST method. */ @Entity @XmlRootElement diff --git a/ejb-txn-remote-call/server/pom.xml b/ejb-txn-remote-call/server/pom.xml index 8bfe7d6f55..bbab2f3b01 100644 --- a/ejb-txn-remote-call/server/pom.xml +++ b/ejb-txn-remote-call/server/pom.xml @@ -114,7 +114,7 @@ - + jakarta.ws.rs jakarta.ws.rs-api diff --git a/guide/KitchensinkQuickstart.asciidoc b/guide/KitchensinkQuickstart.asciidoc index fbdcb8e12c..eae63044bd 100644 --- a/guide/KitchensinkQuickstart.asciidoc +++ b/guide/KitchensinkQuickstart.asciidoc @@ -1,4 +1,4 @@ -CDI + JSF + EJB + JTA + Bean Validation + JAX-RS : Kitchensink quickstart +CDI + JSF + EJB + JTA + Bean Validation + Jakarta REST : Kitchensink quickstart ===================================================================================== :Author: Pete Muir @@ -17,9 +17,9 @@ feedback to users. ======================================================================== [TIP] -.JAX-RS: The Java API for RESTful Web Services +.Jakarta REST: The Java API for RESTful Web Services ======================================================================== -JAX-RS is a specification in Jakarta EE. It allows application +Jakarta REST is a specification in Jakarta EE. It allows application developers to easily expose Java services as RESTful web services. ======================================================================== @@ -67,7 +67,7 @@ image:gfx/Eclipse_KitchenSink_Deploy_3.jpg[] The kitchensink quickstart in depth ----------------------------------- -The kitchensink application shows off a number of Jakarta EE technologies such as CDI, JSF, EJB, JTA, JAX-RS. It does this by providing a member registration database, available via JSF and JAX-RS. +The kitchensink application shows off a number of Jakarta EE technologies such as CDI, JSF, EJB, JTA, Jakarta REST. It does this by providing a member registration database, available via JSF and Jakarta REST. As usual, let's start by looking at the necessary deployment descriptors. By now, we're very used to seeing `beans.xml` and `faces-config.xml` in `WEB-INF/` (which can be found in the `src/main/webapp` directory). Notice that, once again, we don't need a `web.xml`. There are two configuration files in `WEB-INF/classes/META-INF` (which can be found in the `src/main/resources` directory) — `persistence.xml`, which sets up JPA, and `import.sql` which Hibernate, the JPA provider in JBoss WildFly, will use to load the initial users into the application when the application starts. We discussed both of these files in detail in <>, and these are largely the same. @@ -295,7 +295,7 @@ public class Member implements Serializable { } ------------------------------------------------------------------------ <1> As usual with JPA, we define that the class is an entity by adding @Entity -<2> Members are exposed as a RESTful service using JAX-RS. We can use JAXB to map the object to XML and to do this we need to add @XmlRootElement +<2> Members are exposed as a RESTful service using Jakarta REST. We can use JAXB to map the object to XML and to do this we need to add @XmlRootElement <3> Bean Validation allows constraints to be defined once (on the entity) and applied everywhere. Here we constrain the person's name to a certain size and regular expression <4> Hibernate Validator also offers some extra validations such as @Email <5> @Digits , @NotNull and @Size are further examples of constraints @@ -509,7 +509,7 @@ public class MemberController { <7> We also send a message to the user, to give them feedback on their actions <8> Finally, we replace the `newMember` with a new object, thus blanking out the data the user has added so far. This works as the producer field is dependent scoped -Before we wrap up our tour of the kitchensink application, let's take a look at how the JAX-RS endpoints are created. Firstly, `JaxRSActivator`, which extends `Application` and is annotated with `@ApplicationPath`, is the Jakarta EE "no XML" approach to activating JAX-RS. +Before we wrap up our tour of the kitchensink application, let's take a look at how the Jakarta REST endpoints are created. Firstly, `JaxRSActivator`, which extends `Application` and is annotated with `@ApplicationPath`, is the Jakarta EE "no XML" approach to activating Jakarta REST. .src/main/java/org/jboss/as/quickstarts/kitchensink/rest/JaxRsActivator.java [source,java] @@ -561,7 +561,7 @@ public class MemberResourceRESTService { /** * Creates a new member from the values provided. Performs - * validation, and will return a JAX-RS response with either + * validation, and will return a Jakarta REST response with either * 200 ok, or with a map of fields, and related errors. */ @POST @@ -641,13 +641,13 @@ public class MemberResourceRESTService { } /** - * Creates a JAX-RS "Bad Request" response including a map of + * Creates a Jakarta REST "Bad Request" response including a map of * all violation fields, and their message. This can then be * used by clients to show violations. * * @param violations A set of violations that needs to be * reported - * @return JAX-RS response containing all violations + * @return Jakarta REST response containing all violations */ private Response.ResponseBuilder createViolationResponse (Set> violations) { @@ -687,13 +687,13 @@ public class MemberResourceRESTService { } } ------------------------------------------------------------------------ -<1> The `@Path` annotation tells JAX-RS that this class provides a REST endpoint mapped to `rest/members` (concatenating the path from the activator with the path for this endpoint). -<2> The bean is request scoped, as JAX-RS interactions typically don't hold state between requests -<3> JAX-RS endpoints are CDI enabled, and can use CDI-style injection. +<1> The `@Path` annotation tells Jakarta REST that this class provides a REST endpoint mapped to `rest/members` (concatenating the path from the activator with the path for this endpoint). +<2> The bean is request scoped, as Jakarta REST interactions typically don't hold state between requests +<3> Jakarta REST endpoints are CDI enabled, and can use CDI-style injection. <4> CDI allows us to inject a Bean Validation `Validator` instance, which is used to validate the POSTed member before it is persisted <5> `MemberRegistration` is injected to allow us to alter the member database <6> `MemberRepository` is injected to allow us to query the member database -<7> The `listAllMembers()` method is called when the raw endpoint is accessed and offers up a list of endpoints. Notice that the object is automatically marshalled to JSON by RESTEasy (the JAX-RS implementation included in JBoss WildFly). +<7> The `listAllMembers()` method is called when the raw endpoint is accessed and offers up a list of endpoints. Notice that the object is automatically marshalled to JSON by RESTEasy (the Jakarta REST implementation included in JBoss WildFly). <8> The `lookupMemberById()` method is called when the endpoint is accessed with a member id parameter appended (for example `rest/members/1)`. Again, the object is automatically marshalled to JSON by RESTEasy. <9> `createMember()` is called when a POST is performed on the URL. Once again, the object is automatically unmarshalled from JSON. <10> In order to ensure that the member is valid, we call the `validateMember` method, which validates the object, and adds any constraint violations to the response. These can then be handled on the client side, and displayed to the user diff --git a/jaxrs-client/README-source.adoc b/jaxrs-client/README-source.adoc index edf959f768..a890645c94 100644 --- a/jaxrs-client/README-source.adoc +++ b/jaxrs-client/README-source.adoc @@ -3,7 +3,7 @@ include::../shared-doc/attributes.adoc[] = jaxrs-client: Jakarta REST Client API example :author: Rafael Benevides :level: Beginner -:technologies: JAX-RS +:technologies: Jakarta REST :openshift: true :portedToGlow: true diff --git a/jaxrs-client/pom.xml b/jaxrs-client/pom.xml index d02dad9d34..7fab7234fd 100644 --- a/jaxrs-client/pom.xml +++ b/jaxrs-client/pom.xml @@ -33,7 +33,7 @@ 35.0.0.Beta1-SNAPSHOT war Quickstart: jaxrs-client - A JAX-RS Client API project + A Jakarta REST Client API project diff --git a/jaxrs-jwt/README-source.adoc b/jaxrs-jwt/README-source.adoc index 0ba7517ac0..0cc30e7b62 100644 --- a/jaxrs-jwt/README-source.adoc +++ b/jaxrs-jwt/README-source.adoc @@ -3,7 +3,7 @@ include::../shared-doc/attributes.adoc[] = jaxrs-jwt: Jakarta REST secured using JSON Web Tokens (JWTs) :author: Martin Mazanek :level: Intermediate -:technologies: JAX-RS, Security +:technologies: Jakarta REST, Security :standalone-server-type: default :archiveType: war :portedToGlow: true diff --git a/jsonp/pom.xml b/jsonp/pom.xml index 13c4e50171..1bef2322d3 100644 --- a/jsonp/pom.xml +++ b/jsonp/pom.xml @@ -117,7 +117,7 @@ provided - jakarta.ws.rs diff --git a/kitchensink/README-source.adoc b/kitchensink/README-source.adoc index 7ee38bef58..76e5de341a 100644 --- a/kitchensink/README-source.adoc +++ b/kitchensink/README-source.adoc @@ -3,7 +3,7 @@ include::../shared-doc/attributes.adoc[] = kitchensink: Assortment of technologies :author: Pete Muir :level: Intermediate -:technologies: CDI, JSF, JPA, EJB, JAX-RS, BV +:technologies: CDI, JSF, JPA, EJB, Jakarta REST, BV :openshift: true :portedToGlow: true @@ -19,7 +19,7 @@ The `kitchensink` quickstart demonstrates a localized {javaVersion} web-enabled The `kitchensink` quickstart is a deployable Maven 3 project designed to help you get your foot in the door developing with {javaVersion} on {productNameFull}. -It demonstrates how to create a _localized_ {javaVersion} compliant application using JSF, CDI, JAX-RS, EJB, JPA, and Bean Validation. A localized application is one that supports multiple languages. It also includes a persistence unit and some sample persistence and transaction code to introduce you to database access in enterprise Java. +It demonstrates how to create a _localized_ {javaVersion} compliant application using JSF, CDI, Jakarta REST, EJB, JPA, and Bean Validation. A localized application is one that supports multiple languages. It also includes a persistence unit and some sample persistence and transaction code to introduce you to database access in enterprise Java. This quickstart has been enhanced to provide localization of labels and messages. A user sets the preferred language choice in the browser and, if the application supports that language, the application web page is rendered in that language. For demonstration purposes, this quickstart has been tranlated into French(fr) and Spanish (es) using http://translate.google.com, so the translations may not be ideal. diff --git a/kitchensink/pom.xml b/kitchensink/pom.xml index 4cb561c523..8753b3a54a 100644 --- a/kitchensink/pom.xml +++ b/kitchensink/pom.xml @@ -171,7 +171,7 @@ provided - jakarta.ws.rs diff --git a/kitchensink/src/main/java/org/jboss/as/quickstarts/kitchensink/rest/JaxRsActivator.java b/kitchensink/src/main/java/org/jboss/as/quickstarts/kitchensink/rest/JaxRsActivator.java index cff6e84754..40d01ca8ca 100644 --- a/kitchensink/src/main/java/org/jboss/as/quickstarts/kitchensink/rest/JaxRsActivator.java +++ b/kitchensink/src/main/java/org/jboss/as/quickstarts/kitchensink/rest/JaxRsActivator.java @@ -21,7 +21,7 @@ /** * A class extending {@link Application} and annotated with @ApplicationPath is the Jakarta EE "no XML" approach to activating - * JAX-RS. + * Jakarta REST. *

*

* Resources are served relative to the servlet path specified in the {@link ApplicationPath} annotation. diff --git a/kitchensink/src/main/java/org/jboss/as/quickstarts/kitchensink/rest/MemberResourceRESTService.java b/kitchensink/src/main/java/org/jboss/as/quickstarts/kitchensink/rest/MemberResourceRESTService.java index 670ddbfaf3..8bcce87ddc 100644 --- a/kitchensink/src/main/java/org/jboss/as/quickstarts/kitchensink/rest/MemberResourceRESTService.java +++ b/kitchensink/src/main/java/org/jboss/as/quickstarts/kitchensink/rest/MemberResourceRESTService.java @@ -45,7 +45,7 @@ import org.jboss.as.quickstarts.kitchensink.service.MemberRegistration; /** - * JAX-RS Example + * Jakarta REST Example *

* This class produces a RESTful service to read/write the contents of the members table. */ @@ -83,7 +83,7 @@ public Member lookupMemberById(@PathParam("id") long id) { } /** - * Creates a new member from the values provided. Performs validation, and will return a JAX-RS response with either 200 ok, + * Creates a new member from the values provided. Performs validation, and will return a Jakarta REST response with either 200 ok, * or with a map of fields, and related errors. */ @POST @@ -148,11 +148,11 @@ private void validateMember(Member member) throws ConstraintViolationException, } /** - * Creates a JAX-RS "Bad Request" response including a map of all violation fields, and their message. This can then be used + * Creates a Jakarta REST "Bad Request" response including a map of all violation fields, and their message. This can then be used * by clients to show violations. * * @param violations A set of violations that needs to be reported - * @return JAX-RS response containing all violations + * @return Jakarta REST response containing all violations */ private Response.ResponseBuilder createViolationResponse(Set> violations) { log.fine("Validation completed. violations found: " + violations.size()); diff --git a/microprofile-config/README-source.adoc b/microprofile-config/README-source.adoc index 7dcec08530..7945d62cfd 100644 --- a/microprofile-config/README-source.adoc +++ b/microprofile-config/README-source.adoc @@ -164,7 +164,7 @@ Now we are ready to start working with MicroProfile Config. == Injecting a configuration value Let's start by creating a new CDI bean which will use for the injection of our -configuration values. This CDI bean will also be a JAX-RS resource. Create a new +configuration values. This CDI bean will also be a Jakarta REST resource. Create a new class `org.wildfly.quickstarts.microprofile.config.ConfigResource`; To inject any configuration value, MicroProfile Config provides a custom qualifier diff --git a/microprofile-fault-tolerance/README-source.adoc b/microprofile-fault-tolerance/README-source.adoc index efe5c03250..6f71891616 100644 --- a/microprofile-fault-tolerance/README-source.adoc +++ b/microprofile-fault-tolerance/README-source.adoc @@ -49,7 +49,7 @@ include::../shared-doc/start-the-standalone-server.adoc[leveloffset=+1] [[project-from-scratch]] == Creating an Application from Scratch -In this section we will go through the steps to create a new JAX-RS deployment from scratch and then make it more +In this section we will go through the steps to create a new Jakarta REST deployment from scratch and then make it more resilient by using MicroProfile Fault Tolerance annotations. === Project Generation @@ -200,7 +200,7 @@ public class Coffee { } ---- -Now, lets expose our JAX-RS application at the context path: +Now, lets expose our Jakarta REST application at the context path: [source,java] ---- diff --git a/microprofile-fault-tolerance/src/main/java/org/wildfly/quickstarts/microprofile/faulttolerance/CoffeeResource.java b/microprofile-fault-tolerance/src/main/java/org/wildfly/quickstarts/microprofile/faulttolerance/CoffeeResource.java index a5fb22a169..0a6b4acbd7 100644 --- a/microprofile-fault-tolerance/src/main/java/org/wildfly/quickstarts/microprofile/faulttolerance/CoffeeResource.java +++ b/microprofile-fault-tolerance/src/main/java/org/wildfly/quickstarts/microprofile/faulttolerance/CoffeeResource.java @@ -36,7 +36,7 @@ import org.jboss.logging.Logger; /** - * A JAX-RS resource that provides information about kinds of coffees we have on store and numbers of packages available. + * A Jakarta REST resource that provides information about kinds of coffees we have on store and numbers of packages available. * Demonstrates {@link Retry}, {@link CircuitBreaker}, {@link Timeout} and {@link Fallback} policies. * * @author Radoslav Husar diff --git a/microprofile-jwt/README-source.adoc b/microprofile-jwt/README-source.adoc index c568518e43..22c0b969f4 100644 --- a/microprofile-jwt/README-source.adoc +++ b/microprofile-jwt/README-source.adoc @@ -118,13 +118,13 @@ include::../shared-doc/undeploy-the-quickstart.adoc[leveloffset=+1] == Starting from Scratch -In this section we will go through the steps to create a new JAX-RS deployment from scratch and incrementally +In this section we will go through the steps to create a new Jakarta REST deployment from scratch and incrementally add support for MicroProfile JWT including token generation, activation of authorization and the injection of claims. === Project Generation -This quickstart will be making use of JAX-RS endpoints secured using MicroProfile JWT so the first step +This quickstart will be making use of Jakarta REST endpoints secured using MicroProfile JWT so the first step is to generate a new `webapp` project: - [source,options="nowrap"] @@ -259,10 +259,10 @@ Once the project has been developed this plug-in will handle the deployment to t // Setup required repositories include::../shared-doc/setup-repositories.adoc[leveloffset=+1] -==== JAX-RS Conversion +==== Jakarta REST Conversion The generated project is a standard web application so the next step will be to delete the files not -required by this quickstart and add the JAX-RS application and a `helloWorld` endpoint. +required by this quickstart and add the Jakarta REST application and a `helloWorld` endpoint. Under `src/main/webapp` delete the generated `index.jsp`. @@ -272,7 +272,7 @@ to enable CDI for the deployment. Under `src/main` create a new `java` directory to hold the Java class to be added to the project. Add the following class in the `org.wildfly.quickstarts.mpjwt` package, this will be the main trigger to -process the deployment as a JAX-RS deployment. +process the deployment as a Jakarta REST deployment. [source,java] ---- @@ -310,7 +310,7 @@ public class SampleEndPoint { } ---- -At this stage the project contains a simple JAX-RS endpoint we can deploy to the server and invoke to verify +At this stage the project contains a simple Jakarta REST endpoint we can deploy to the server and invoke to verify everything is working as expected before moving on to enable JWT based authentication and authorization. First build the example and deploy it to the previously started application server. @@ -522,7 +522,7 @@ We now have everything we need to activate `MP-JWT` authentication on the deploy === Activating MicroProfile JWT -At this stage we have a basic JAX-RS deployment, a pair of keys for the generation of and validation of JWT tokens and a utility to generate JWT tokens. +At this stage we have a basic Jakarta REST deployment, a pair of keys for the generation of and validation of JWT tokens and a utility to generate JWT tokens. Our next step is to activate MicroProfile JWT authentication for the deployment and we can then make use of some of the advanced features such as role based access control using the groups from within the token and access to individual claims within the token. @@ -590,7 +590,7 @@ public String helloRolesAllowed(@Context SecurityContext ctx) { ---- -Within WildFly the JAX-RS deployment is handled by RESTEasy so under `src/main/webapp/WEB-INF` add the following to the web.xml to enable RESTEasy authorization checks. +Within WildFly the Jakarta REST deployment is handled by RESTEasy so under `src/main/webapp/WEB-INF` add the following to the web.xml to enable RESTEasy authorization checks. [source,xml] ---- diff --git a/microprofile-jwt/pom.xml b/microprofile-jwt/pom.xml index 49d7d32da1..414072805b 100644 --- a/microprofile-jwt/pom.xml +++ b/microprofile-jwt/pom.xml @@ -100,7 +100,7 @@ provided - + jakarta.ws.rs jakarta.ws.rs-api diff --git a/microprofile-lra/README-source.adoc b/microprofile-lra/README-source.adoc index 915b5071ea..308b2cdea5 100644 --- a/microprofile-lra/README-source.adoc +++ b/microprofile-lra/README-source.adoc @@ -251,7 +251,7 @@ Now we need to add the following dependencies: ---- -NOTE: We need Jakarta REST (JAX-RS) since LRA exposes functionality over JAX-RS resources and uses HTTP as its +NOTE: We need Jakarta REST since LRA exposes functionality over Jakarta REST resources and uses HTTP as its communication protocol. All dependencies can have provided scope. The versions are taken from the above @@ -288,9 +288,9 @@ include::../shared-doc/setup-repositories.adoc[leveloffset=+1] Now we are ready to start working with MicroProfile LRA. -== Set up JAX-RS server and result wrapper +== Set up Jakarta REST server and result wrapper -LRA works on top of JAX-RS. To set up JAX-RS server in our service, we need to create a new application class +LRA works on top of Jakarta REST. To set up Jakarta REST server in our service, we need to create a new application class `org.wildfly.quickstarts.microprofile.lra.JaxRsApplication` in the file `microprofile-lra/src/main/java/org/wildfly/quickstarts/microprofile/lra/JaxRsApplication.java` that looks like this: @@ -306,7 +306,7 @@ public class JaxRsApplication extends Application { } ---- -Now we can declare our LRA JAX-RS resources. +Now we can declare our LRA Jakarta REST resources. The LRAs we're going to create also accumulate results in a wrapper called `ParticipantResult` which we can create in `org.wildfly.quickstarts.microprofile.lra.ParticipantResult` class: @@ -405,8 +405,8 @@ similarly to `@Transactional` annotation from JTA. By default, it uses the `REQU started or existing LRA (if passed to the invocation) is joined before the method is started. The LRA is also closed (success) or cancelled (failure/exception) at the end of the method. -LRA currently works on top of the JAX-RS resources. We can place `@LRA` annotation on any JAX-RS method and the LRA -is already managed for us by {productName}. Let's create a simple JAX-RS resource that uses lra in `org.wildfly .quickstarts.microprofile.lra.LRAParticipant1`: +LRA currently works on top of the Jakarta REST resources. We can place `@LRA` annotation on any Jakarta REST method and the LRA +is already managed for us by {productName}. Let's create a simple Jakarta REST resource that uses lra in `org.wildfly .quickstarts.microprofile.lra.LRAParticipant1`: [source,java] ---- @@ -554,7 +554,7 @@ public Response work(@HeaderParam(LRA.LRA_HTTP_CONTEXT_HEADER) URI lraId, } ---- -In this `GET` JAX-RS method, we also use the `@LRA` annotation that either starts a new LRA or joins an existing one +In this `GET` Jakarta REST method, we also use the `@LRA` annotation that either starts a new LRA or joins an existing one which is defined by the default LRA type `REQUIRED`. This is decided based on the `LRA.LRA_HTTP_CONTEXT_HEADER` header we called `lraId`. If the framework starts a new LRA, this header is automatically populated with its ID. If the caller specifies this `LRA.LRA_HTTP_CONTEXT_HEADER` @@ -584,13 +584,13 @@ public Response compensateWork(@HeaderParam(LRA.LRA_HTTP_CONTEXT_HEADER) URI lra } ---- -The compensation is defined by the `@Compensate` annotation which needs to be placed on the JAX-RS PUT method so the LRA +The compensation is defined by the `@Compensate` annotation which needs to be placed on the Jakarta REST PUT method so the LRA coordinator knows how to call it. For simplicity, we are just printing the messages to the console. The participant can control how it finishes its participation in LRA via the returned status code. Please see the link:https://github.com/eclipse/microprofile-lra/blob/main/spec/src/main/asciidoc/microprofile-lra-spec.asciidoc[specification] for more details. -The complete method looks similarly. It uses the `@Complete` annotation and it also needs to be the JAX-RS PUT method. +The complete method looks similarly. It uses the `@Complete` annotation and it also needs to be the Jakarta REST PUT method. [source,java] ---- @@ -611,13 +611,13 @@ public Response completeWork(@HeaderParam(LRA.LRA_HTTP_CONTEXT_HEADER) URI lraId The LRA coordinator invokes the `@Compensate` method when the LRA cancels on failure and it invokes the `@Complete` method when the LRA closes successfully. -NOTE: The `@Complete` and `@Compensate` methods don't need to be JAX-RS methods. See the specification for details. +NOTE: The `@Complete` and `@Compensate` methods don't need to be Jakarta REST methods. See the specification for details. Now we are already able to start our first LRA. You can deploy the application to the {productName} as demonstrated in the <> section. Remember that you need to enable the LRA extensions and subsystems with the `enable-microprofile-lra.cli` script. -Then you can invoke the `LRAParticipant1` JAX-RS resource as: +Then you can invoke the `LRAParticipant1` Jakarta REST resource as: [source,bash] ---- @@ -776,7 +776,7 @@ compensate or complete callbacks on all enlisted participants (including `LRAPar LRA into this class soon). However, it would also try to close/cancel LRA at the end of the `LRAParticipant1#work` method and by this time the LRA would already be ended. This would be reported by the coordinator. -We also need to add the call to the newly created JAX-RS resource to the `LRAParticipant1#work` method as showed in +We also need to add the call to the newly created Jakarta REST resource to the `LRAParticipant1#work` method as showed in this snipped: @@ -810,14 +810,14 @@ public Response work(@HeaderParam(LRA.LRA_HTTP_CONTEXT_HEADER) URI lraId, ---- You might remember that we need to propagate the LRA id (LRA context) in the `LRA.LRA_HTTP_CONTEXT_HEADER`. However, if -we make the outgoing JAX-RS call in the JAX-RS method that already carries an active LRA context, the context is +we make the outgoing Jakarta REST call in the Jakarta REST method that already carries an active LRA context, the context is automatically added to the outgoing call. So we don't need to pass it manually to each outgoing call. Now we are ready to propagate LRA started in Participant 1 to the Participant 2, enlist both in the newly started LRA, and finish the LRA when the Participant 1 ends its `work` method. Redeploy the application into the {productName} as showed in <>. Then you can repeat the calls to the -`LRAParticipant1` JAX-RS resource as we used them previously: +`LRAParticipant1` Jakarta REST resource as we used them previously: [source,bash] ---- diff --git a/microprofile-openapi/README-source.adoc b/microprofile-openapi/README-source.adoc index 89dc17cb52..9bff0a805b 100644 --- a/microprofile-openapi/README-source.adoc +++ b/microprofile-openapi/README-source.adoc @@ -123,7 +123,7 @@ You will need to rebuild/redeploy for those changes to be reflected in the OpenA === Finalizing OpenAPI documentation -Rather than processing JAX-RS and MicroProfile OpenAPI annotations every time an application is deployed, {productName} can be configured to serve a static OpenAPI document. +Rather than processing Jakarta REST and MicroProfile OpenAPI annotations every time an application is deployed, {productName} can be configured to serve a static OpenAPI document. When serving a static document, typically, we also want to disable annotation processing. This is generally suggested for production environments, to ensure an immutable/versioned API contract for integrators. diff --git a/microprofile-reactive-messaging-kafka/README-source.adoc b/microprofile-reactive-messaging-kafka/README-source.adoc index f92d4eb7af..ac822f7eca 100644 --- a/microprofile-reactive-messaging-kafka/README-source.adoc +++ b/microprofile-reactive-messaging-kafka/README-source.adoc @@ -108,7 +108,7 @@ Next set up our dependencies. Add the following section to your ---- By using boms the majority of dependencies used within this quickstart align with the version used by the application server. -Now we need to add the dependencies which are needed by what is the focus of this QuickStart (CDI, MicroProfile Reactive Messaging, Reactive Streams Operators, Reactive Streams and the Apache Kafka Client). Additionally we need to add dependencies for 'supporting' functionality (JPA, JTA and JAX-RS): +Now we need to add the dependencies which are needed by what is the focus of this QuickStart (CDI, MicroProfile Reactive Messaging, Reactive Streams Operators, Reactive Streams and the Apache Kafka Client). Additionally we need to add dependencies for 'supporting' functionality (JPA, JTA and Jakarta REST): [source,xml] ---- @@ -172,7 +172,7 @@ Now we need to add the dependencies which are needed by what is the focus of thi jakarta.transaction-api provided - + jakarta.ws.rs jakarta.ws.rs-api @@ -222,7 +222,7 @@ This will walk you through the steps to write our application. They are: * Add a data object which wraps the generated messages and adds a timestamp. We will use JPA annotations on this to make it persistable. * Create our CDI bean interfacing with the Kafka streams via annotated methods. For the streams that are managed by Kafka we will provide a MicroProfile Config file to configure how to interact with Kafka. It will log, filter and store entries to a RDBMS. * Create a CDI bean that will be used to store and retrieve entries from a RDBMS. -* Create a JAX-RS endpoint to return the data that was stored in the RDBMS to the user. +* Create a Jakarta REST endpoint to return the data that was stored in the RDBMS to the user. === Adding our Data Generator Copy across the `microprofile-reactive-messaging-kafka/src/main/java/org/wildfly/quickstarts/microprofile/reactive/messaging/MockExternalAsyncResource.java` file to your project. This class mocks a call to an asynchronous external resource. The details of how it is implemented are not important for this QuickStart. @@ -653,7 +653,7 @@ The `DatabaseBean.store()` method saves the `TimedEntry` and the `DatabaseBean.l It is worth pointing out that the `@Incoming` and `@Outgoing` annotated methods called by the Reactive Messaging implementation (such as `MessagingBean.receiveFromKafka()`) happen outside of user space, so there is no @Transaction associated with them. So we need to annotated the `DatabaseBean.store()` method with `@Transactional` in order to save our entry to the database. ### Viewing the Data Stored in the RDBMS -Finally, we would like to be able to view the data that was stored in the database. To do this we will add a JAX-RS endpoint that queries the database by calling `DatabaseBean.loadAllTimedEntries()`. +Finally, we would like to be able to view the data that was stored in the database. To do this we will add a Jakarta REST endpoint that queries the database by calling `DatabaseBean.loadAllTimedEntries()`. [source,java] ---- @@ -688,7 +688,7 @@ public class RootResource { } ---- -We expose our JAX-RS application at the context path: +We expose our Jakarta REST application at the context path: [source,java] ---- @@ -800,14 +800,14 @@ We store this injected `Publisher` in the `broadcastPublisher` field. We will co There are a few caveats on this mechanism though: 1. There must be an active `Subscription` (from the Reactive Streams specification) on the channel before the `Emitter.send()` method is called. -2. There can only be one `Subscription` on the injected `Publisher`. This means that we cannot simply return this `Publisher` as is via an asynchronous JAX-RS endpoint as each client request would result in a separate `Subscription`. +2. There can only be one `Subscription` on the injected `Publisher`. This means that we cannot simply return this `Publisher` as is via an asynchronous Jakarta REST endpoint as each client request would result in a separate `Subscription`. The above two points will hopefully be fixed in a future version of the specification. For the purposes of this quickstart we are bypassing the above limitations by creating the `BroadcastPublisher` class and wrapping the original `Publisher` in that instead. Note that implementing `Publisher` is hard, and that `BroadcastPublisher` should be considered a 'proof of concept'. For more details about the `BroadcastPublisher` see the source code of the `UserMessagingBean` class. In a nutshell what it does is: * Its constructor subscribes to the injected `Publisher` to avoid the first problem * When code subscribes to it, it handles the `Subscription` on its own level, and forwards on code received on the ' a separate level and forwards on data received from the base `Subsciption` created in the constructor. -Finally we have a JAX-RS endpoint +Finally we have a Jakarta REST endpoint [source, java] ---- package org.wildfly.quickstarts.microprofile.reactive.messaging; diff --git a/microprofile-reactive-messaging-kafka/pom.xml b/microprofile-reactive-messaging-kafka/pom.xml index 88212bb3ab..39638b3c73 100644 --- a/microprofile-reactive-messaging-kafka/pom.xml +++ b/microprofile-reactive-messaging-kafka/pom.xml @@ -126,7 +126,7 @@ jakarta.transaction-api provided - + jakarta.ws.rs jakarta.ws.rs-api diff --git a/spring-resteasy/pom.xml b/spring-resteasy/pom.xml index 09dc7bfd9e..bf08179ff9 100644 --- a/spring-resteasy/pom.xml +++ b/spring-resteasy/pom.xml @@ -33,7 +33,7 @@ 35.0.0.Beta1-SNAPSHOT war Quickstart: spring-resteasy - This project demonstrates Spring with a JAX-RS RestEasy client + This project demonstrates Spring with a Jakarta REST RestEasy client diff --git a/spring-resteasy/src/main/webapp/WEB-INF/applicationContext.xml b/spring-resteasy/src/main/webapp/WEB-INF/applicationContext.xml index 335f6994e2..41de7e26f3 100644 --- a/spring-resteasy/src/main/webapp/WEB-INF/applicationContext.xml +++ b/spring-resteasy/src/main/webapp/WEB-INF/applicationContext.xml @@ -24,7 +24,7 @@ - + @@ -32,7 +32,7 @@ - + diff --git a/spring-resteasy/src/test/resources/applicationContext.xml b/spring-resteasy/src/test/resources/applicationContext.xml index 335f6994e2..41de7e26f3 100644 --- a/spring-resteasy/src/test/resources/applicationContext.xml +++ b/spring-resteasy/src/test/resources/applicationContext.xml @@ -24,7 +24,7 @@ - + @@ -32,7 +32,7 @@ - + diff --git a/thread-racing/README-source.adoc b/thread-racing/README-source.adoc index 6ef7e33e57..4e78af879e 100644 --- a/thread-racing/README-source.adoc +++ b/thread-racing/README-source.adoc @@ -3,7 +3,7 @@ include::../shared-doc/attributes.adoc[] = thread-racing: A Jakarta EE thread racing web application :author: Eduardo Martins :level: Beginner -:technologies: Batch, CDI, EE Concurrency, JAX-RS, JMS, JPA, JSON, Web Sockets +:technologies: Batch, CDI, EE Concurrency, Jakarta REST, JMS, JPA, JSON, Web Sockets :openshift: true :portedToGlow: true @@ -24,7 +24,7 @@ The race itself consists of multiple stages, each demonstrating the usage of a s * Batch 2.1 * EE Concurrency 3.0 -* JAX-RS 3.1 +* Jakarta REST 3.1 * JMS 3.1 * JSON 2.1 @@ -61,7 +61,7 @@ include::../shared-doc/build-and-deploy-the-quickstart.adoc[leveloffset=+2] The application will be running at the following URL http://localhost:8080/{artifactId}/. -To start a race press the `Insert Coin` button. The page displays the names of the threads as they join the race. It then tracks the progress of each thread through the Batch, EE Concurrency, JAX-RS, JMS, and JSON stages of the race. Finally, it displays the official race results and championship standings. +To start a race press the `Insert Coin` button. The page displays the names of the threads as they join the race. It then tracks the progress of each thread through the Batch, EE Concurrency, Jakarta REST, JMS, and JSON stages of the race. Finally, it displays the official race results and championship standings. // Server Distribution Testing include::../shared-doc/run-integration-tests-with-server-distribution.adoc[leveloffset=+2] diff --git a/thread-racing/pom.xml b/thread-racing/pom.xml index cb2adb7429..ae72670779 100644 --- a/thread-racing/pom.xml +++ b/thread-racing/pom.xml @@ -142,7 +142,7 @@ provided - + jakarta.ws.rs jakarta.ws.rs-api diff --git a/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/Racer.java b/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/Racer.java index 4667dd89cf..66420d82b6 100644 --- a/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/Racer.java +++ b/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/Racer.java @@ -58,7 +58,7 @@ public class Racer { private EEConcurrencyRaceStage eeConcurrencyRaceStage; /** - * cdi injection of the JAX-RS 2.0 race stage + * cdi injection of the Jakarta REST race stage */ @Inject private JAXRSRaceStage jaxrsRaceStageRen; @@ -144,14 +144,14 @@ public void run() { */ private void runRaceStages() throws Exception { batchRaceStage.run(registration); - registration.broadcast("completed the Batch 1.0 stage."); + registration.broadcast("completed the Batch stage."); eeConcurrencyRaceStage.run(registration); - registration.broadcast("completed the EE Concurrency 1.0 stage."); + registration.broadcast("completed the EE Concurrency stage."); jaxrsRaceStageRen.run(registration); - registration.broadcast("completed the JAX-RS 2.0 stage."); + registration.broadcast("completed the Jakarta REST stage."); jmsRaceStage.run(registration); - registration.broadcast("completed the JMS 2.0 stage."); + registration.broadcast("completed the JMS stage."); jsonRaceStageRen.run(registration); - registration.broadcast("completed the JSON 1.0 stage."); + registration.broadcast("completed the JSON stage."); } } diff --git a/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/stage/jaxrs/BoxApplication.java b/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/stage/jaxrs/BoxApplication.java index edda4dc0f0..b0348920e6 100644 --- a/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/stage/jaxrs/BoxApplication.java +++ b/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/stage/jaxrs/BoxApplication.java @@ -20,7 +20,7 @@ import jakarta.ws.rs.core.Application; /** - * A class extending {@link jakarta.ws.rs.core.Application} is the portable way to define JAX-RS 2.0 REST Services, and the {@link jakarta.ws.rs.ApplicationPath} defines the common path of such services. + * A class extending {@link jakarta.ws.rs.core.Application} is the portable way to define Jakarta REST REST Services, and the {@link jakarta.ws.rs.ApplicationPath} defines the common path of such services. * @author Eduardo Martins */ @ApplicationPath(BoxApplication.PATH) diff --git a/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/stage/jaxrs/JAXRSRaceStage.java b/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/stage/jaxrs/JAXRSRaceStage.java index 16ad179232..5e2787daae 100644 --- a/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/stage/jaxrs/JAXRSRaceStage.java +++ b/thread-racing/src/main/java/org/jboss/as/quickstarts/threadracing/stage/jaxrs/JAXRSRaceStage.java @@ -28,7 +28,7 @@ import org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder; /** - * The JAX-RS 2.0 race stage implements the race's boxes, which a racer uses to do a pit stop. + * The Jakarta REST race stage implements the race's boxes, which a racer uses to do a pit stop. * * @author Eduardo Martins */ @@ -47,7 +47,7 @@ public void run(Race.Registration registration) throws Exception { .append(BoxApplication.PATH) .append("/pitStop") .toString(); - // create and setup the new standard JAX-RS client (and its web target) + // create and setup the new standard Jakarta REST client (and its web target) final Client client = ((ResteasyClientBuilder) ClientBuilder.newBuilder()) .build(); try { diff --git a/todo-backend/README-source.adoc b/todo-backend/README-source.adoc index 7ddd8f109c..ae0cbaa3d3 100644 --- a/todo-backend/README-source.adoc +++ b/todo-backend/README-source.adoc @@ -7,7 +7,7 @@ include::../shared-doc/attributes.adoc[] :idseparator: - :keywords: openshift,galleon,helm :level: Intermediate -:technologies: JPA, JAX-RS, OpenShift, Galleon +:technologies: JPA, Jakarta REST, OpenShift, Galleon :openshift: true :archiveType: war :useHelmChartDir: true @@ -17,7 +17,7 @@ include::../shared-doc/attributes.adoc[] :helmSetWildFlyArgumentPrefix: wildfly. [abstract] -The `todo-backend` quickstart demonstrates how to implement a backend that exposes a HTTP API with JAX-RS +The `todo-backend` quickstart demonstrates how to implement a backend that exposes a HTTP API with Jakarta REST to manage a list of ToDo which are persisted in a database with JPA. ifndef::ProductRelease[] @@ -32,7 +32,7 @@ endif::[] == What is it? -The `todo-backend` quickstart demonstrates how to implement a backend that exposes a HTTP API with `JAX-RS` +The `todo-backend` quickstart demonstrates how to implement a backend that exposes a HTTP API with `Jakarta REST` to manage a list of ToDo which are persisted in a database with `JPA`. * The backend exposes a HTTP API to manage a list of todos that complies with the specs defined at https://todobackend.com/specs/index.html[todobackend.com]. @@ -86,7 +86,7 @@ The layers are defined in the `pom.xml` file in the `` section of endif::[] The `cloud-server` layer provides everything needed to run the backend on OpenShift. This also includes access to -Jakarta EE APIs such as CDI, JAX-RS, JPA, etc. These two layers comes from the {productName} feature pack provided in the +Jakarta EE APIs such as CDI, Jakarta REST, JPA, etc. These two layers comes from the {productName} feature pack provided in the {productName} S2I builder image. ifndef::ProductRelease[] diff --git a/todo-backend/README.adoc b/todo-backend/README.adoc index 790c8a45a3..c3fb2d57dc 100644 --- a/todo-backend/README.adoc +++ b/todo-backend/README.adoc @@ -205,7 +205,7 @@ endif::[] :idseparator: - :keywords: openshift,galleon,helm :level: Intermediate -:technologies: JPA, JAX-RS, OpenShift, Galleon +:technologies: JPA, Jakarta REST, OpenShift, Galleon :openshift: true :archiveType: war :useHelmChartDir: true