diff --git a/pom.xml b/pom.xml
index f89c71668310..0e6a15340149 100644
--- a/pom.xml
+++ b/pom.xml
@@ -803,7 +803,6 @@
spring-ejb-modules
spring-exceptions
spring-grpc
- spring-jersey
spring-kafka
spring-kafka-2
spring-kafka-3
@@ -1246,7 +1245,6 @@
spring-ejb-modules
spring-exceptions
spring-grpc
- spring-jersey
spring-kafka
spring-kafka-2
spring-kafka-3
diff --git a/spring-web-modules/pom.xml b/spring-web-modules/pom.xml
index b82792d33abe..4c687841cc02 100644
--- a/spring-web-modules/pom.xml
+++ b/spring-web-modules/pom.xml
@@ -56,6 +56,7 @@
spring-thymeleaf-5
spring-web-url
spring-thymeleaf-attributes
+ spring-jersey
diff --git a/spring-jersey/.gitignore b/spring-web-modules/spring-jersey/.gitignore
similarity index 100%
rename from spring-jersey/.gitignore
rename to spring-web-modules/spring-jersey/.gitignore
diff --git a/spring-jersey/pom.xml b/spring-web-modules/spring-jersey/pom.xml
similarity index 80%
rename from spring-jersey/pom.xml
rename to spring-web-modules/spring-jersey/pom.xml
index 19722925dc35..89bb79ecf228 100644
--- a/spring-jersey/pom.xml
+++ b/spring-web-modules/spring-jersey/pom.xml
@@ -10,8 +10,8 @@
com.baeldung
- parent-modules
- 1.0.0-SNAPSHOT
+ spring-web-modules
+ 0.0.1-SNAPSHOT
@@ -25,6 +25,16 @@
org.glassfish.jersey.media
jersey-media-json-jackson
${jersey.version}
+
+
+ com.fasterxml.jackson.module
+ jackson-module-jaxb-annotations
+
+
+
+
+ com.fasterxml.jackson.module
+ jackson-module-jakarta-xmlbind-annotations
org.glassfish.jersey.core
@@ -33,15 +43,33 @@
- javax.servlet
- javax.servlet-api
- ${javax.servlet-api.version}
+ jakarta.servlet
+ jakarta.servlet-api
+ ${jakarta.servlet-api.version}
provided
+
+
+ org.springframework
+ spring-web
+
+
+ org.springframework
+ spring-context
+
+
+
+ jakarta.xml.bind
+ jakarta.xml.bind-api
+
+
+ org.glassfish.jaxb
+ jaxb-runtime
+
org.glassfish.jersey.ext
- jersey-spring4
+ jersey-spring6
${jersey.version}
@@ -86,7 +114,7 @@
org.wiremock
- wiremock
+ wiremock-jetty12
${wiremock.version}
test
@@ -94,6 +122,12 @@
com.fasterxml.jackson.jaxrs
jackson-jaxrs-json-provider
${jackson.version}
+
+
+ com.fasterxml.jackson.module
+ jackson-module-jaxb-annotations
+
+
com.fasterxml.jackson.core
@@ -195,6 +229,13 @@
false
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+ true
+
+
org.codehaus.cargo
cargo-maven2-plugin
@@ -216,12 +257,12 @@
- 2.29.1
+ 3.1.3
+ 6.0.0
1.6.1
4.4.9
4.5.5
3.9.1
- 1.5.10.RELEASE
\ No newline at end of file
diff --git a/spring-jersey/src/main/java/com/baeldung/client/rest/RestClient.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/client/rest/RestClient.java
similarity index 84%
rename from spring-jersey/src/main/java/com/baeldung/client/rest/RestClient.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/client/rest/RestClient.java
index 34f7d456016d..7affe820cc26 100644
--- a/spring-jersey/src/main/java/com/baeldung/client/rest/RestClient.java
+++ b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/client/rest/RestClient.java
@@ -1,10 +1,10 @@
package com.baeldung.client.rest;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.Entity;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.Entity;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
import com.baeldung.server.model.Employee;
diff --git a/spring-jersey/src/main/java/com/baeldung/server/config/ApplicationInitializer.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/config/ApplicationInitializer.java
similarity index 91%
rename from spring-jersey/src/main/java/com/baeldung/server/config/ApplicationInitializer.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/config/ApplicationInitializer.java
index d91d4d5f38f7..0398d80fd7f9 100644
--- a/spring-jersey/src/main/java/com/baeldung/server/config/ApplicationInitializer.java
+++ b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/config/ApplicationInitializer.java
@@ -1,7 +1,7 @@
package com.baeldung.server.config;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
diff --git a/spring-jersey/src/main/java/com/baeldung/server/config/RestConfig.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/config/RestConfig.java
similarity index 87%
rename from spring-jersey/src/main/java/com/baeldung/server/config/RestConfig.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/config/RestConfig.java
index 34d8948f5905..2b960d77640d 100644
--- a/spring-jersey/src/main/java/com/baeldung/server/config/RestConfig.java
+++ b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/config/RestConfig.java
@@ -1,7 +1,7 @@
package com.baeldung.server.config;
-import javax.ws.rs.ApplicationPath;
-import javax.ws.rs.core.Application;
+import jakarta.ws.rs.ApplicationPath;
+import jakarta.ws.rs.core.Application;
import com.baeldung.server.exception.AlreadyExistsExceptionHandler;
import com.baeldung.server.exception.NotFoundExceptionHandler;
diff --git a/spring-jersey/src/main/java/com/baeldung/server/exception/AlreadyExistsExceptionHandler.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/AlreadyExistsExceptionHandler.java
similarity index 72%
rename from spring-jersey/src/main/java/com/baeldung/server/exception/AlreadyExistsExceptionHandler.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/AlreadyExistsExceptionHandler.java
index 46033728079d..54ffe7943acc 100644
--- a/spring-jersey/src/main/java/com/baeldung/server/exception/AlreadyExistsExceptionHandler.java
+++ b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/AlreadyExistsExceptionHandler.java
@@ -1,8 +1,8 @@
package com.baeldung.server.exception;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.ext.ExceptionMapper;
-import javax.ws.rs.ext.Provider;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.ext.ExceptionMapper;
+import jakarta.ws.rs.ext.Provider;
@Provider
public class AlreadyExistsExceptionHandler implements ExceptionMapper {
diff --git a/spring-jersey/src/main/java/com/baeldung/server/exception/EmployeeAlreadyExists.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/EmployeeAlreadyExists.java
similarity index 100%
rename from spring-jersey/src/main/java/com/baeldung/server/exception/EmployeeAlreadyExists.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/EmployeeAlreadyExists.java
diff --git a/spring-jersey/src/main/java/com/baeldung/server/exception/EmployeeNotFound.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/EmployeeNotFound.java
similarity index 100%
rename from spring-jersey/src/main/java/com/baeldung/server/exception/EmployeeNotFound.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/EmployeeNotFound.java
diff --git a/spring-jersey/src/main/java/com/baeldung/server/exception/NotFoundExceptionHandler.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/NotFoundExceptionHandler.java
similarity index 70%
rename from spring-jersey/src/main/java/com/baeldung/server/exception/NotFoundExceptionHandler.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/NotFoundExceptionHandler.java
index 5de9b53c302f..f593b62495d4 100644
--- a/spring-jersey/src/main/java/com/baeldung/server/exception/NotFoundExceptionHandler.java
+++ b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/exception/NotFoundExceptionHandler.java
@@ -1,8 +1,8 @@
package com.baeldung.server.exception;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.ext.ExceptionMapper;
-import javax.ws.rs.ext.Provider;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.ext.ExceptionMapper;
+import jakarta.ws.rs.ext.Provider;
@Provider
public class NotFoundExceptionHandler implements ExceptionMapper {
diff --git a/spring-jersey/src/main/java/com/baeldung/server/model/Employee.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/model/Employee.java
similarity index 91%
rename from spring-jersey/src/main/java/com/baeldung/server/model/Employee.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/model/Employee.java
index 1801134f6805..1a8b267e4fa4 100644
--- a/spring-jersey/src/main/java/com/baeldung/server/model/Employee.java
+++ b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/model/Employee.java
@@ -1,6 +1,6 @@
package com.baeldung.server.model;
-import javax.xml.bind.annotation.XmlRootElement;
+import jakarta.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class Employee {
diff --git a/spring-jersey/src/main/java/com/baeldung/server/repository/EmployeeRepository.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/repository/EmployeeRepository.java
similarity index 100%
rename from spring-jersey/src/main/java/com/baeldung/server/repository/EmployeeRepository.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/repository/EmployeeRepository.java
diff --git a/spring-jersey/src/main/java/com/baeldung/server/repository/EmployeeRepositoryImpl.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/repository/EmployeeRepositoryImpl.java
similarity index 100%
rename from spring-jersey/src/main/java/com/baeldung/server/repository/EmployeeRepositoryImpl.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/repository/EmployeeRepositoryImpl.java
diff --git a/spring-jersey/src/main/java/com/baeldung/server/rest/EmployeeResource.java b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/rest/EmployeeResource.java
similarity index 83%
rename from spring-jersey/src/main/java/com/baeldung/server/rest/EmployeeResource.java
rename to spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/rest/EmployeeResource.java
index 2301f3eaf309..dcfce5ec14f8 100644
--- a/spring-jersey/src/main/java/com/baeldung/server/rest/EmployeeResource.java
+++ b/spring-web-modules/spring-jersey/src/main/java/com/baeldung/server/rest/EmployeeResource.java
@@ -2,18 +2,18 @@
import java.util.List;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.DELETE;
-import javax.ws.rs.GET;
-import javax.ws.rs.POST;
-import javax.ws.rs.PUT;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriInfo;
+import jakarta.ws.rs.Consumes;
+import jakarta.ws.rs.DELETE;
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.POST;
+import jakarta.ws.rs.PUT;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.Context;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriInfo;
import org.springframework.beans.factory.annotation.Autowired;
diff --git a/spring-jersey/src/main/resources/logback.xml b/spring-web-modules/spring-jersey/src/main/resources/logback.xml
similarity index 100%
rename from spring-jersey/src/main/resources/logback.xml
rename to spring-web-modules/spring-jersey/src/main/resources/logback.xml
diff --git a/spring-jersey/src/test/java/com/baeldung/SpringContextTest.java b/spring-web-modules/spring-jersey/src/test/java/com/baeldung/SpringContextTest.java
similarity index 100%
rename from spring-jersey/src/test/java/com/baeldung/SpringContextTest.java
rename to spring-web-modules/spring-jersey/src/test/java/com/baeldung/SpringContextTest.java
diff --git a/spring-jersey/src/test/java/com/baeldung/client/JerseyClientLiveTest.java b/spring-web-modules/spring-jersey/src/test/java/com/baeldung/client/JerseyClientLiveTest.java
similarity index 97%
rename from spring-jersey/src/test/java/com/baeldung/client/JerseyClientLiveTest.java
rename to spring-web-modules/spring-jersey/src/test/java/com/baeldung/client/JerseyClientLiveTest.java
index be87cd547845..d4c745eadd1c 100644
--- a/spring-jersey/src/test/java/com/baeldung/client/JerseyClientLiveTest.java
+++ b/spring-web-modules/spring-jersey/src/test/java/com/baeldung/client/JerseyClientLiveTest.java
@@ -2,7 +2,7 @@
import static org.junit.Assert.assertEquals;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.core.Response;
import org.junit.Test;
diff --git a/spring-jersey/src/test/java/com/baeldung/clientrx/ClientOrchestrationIntegrationTest.java b/spring-web-modules/spring-jersey/src/test/java/com/baeldung/clientrx/ClientOrchestrationIntegrationTest.java
similarity index 98%
rename from spring-jersey/src/test/java/com/baeldung/clientrx/ClientOrchestrationIntegrationTest.java
rename to spring-web-modules/spring-jersey/src/test/java/com/baeldung/clientrx/ClientOrchestrationIntegrationTest.java
index 8f40636d0129..4e964a3abb3a 100644
--- a/spring-jersey/src/test/java/com/baeldung/clientrx/ClientOrchestrationIntegrationTest.java
+++ b/spring-web-modules/spring-jersey/src/test/java/com/baeldung/clientrx/ClientOrchestrationIntegrationTest.java
@@ -11,12 +11,12 @@
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.InvocationCallback;
-import javax.ws.rs.client.WebTarget;
-import javax.ws.rs.core.GenericType;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.InvocationCallback;
+import jakarta.ws.rs.client.WebTarget;
+import jakarta.ws.rs.core.GenericType;
+import jakarta.ws.rs.core.MediaType;
import org.glassfish.jersey.client.rx.rxjava.RxObservableInvoker;
import org.glassfish.jersey.client.rx.rxjava.RxObservableInvokerProvider;
diff --git a/spring-jersey/src/test/java/com/baeldung/server/JerseyApiLiveTest.java b/spring-web-modules/spring-jersey/src/test/java/com/baeldung/server/JerseyApiLiveTest.java
similarity index 100%
rename from spring-jersey/src/test/java/com/baeldung/server/JerseyApiLiveTest.java
rename to spring-web-modules/spring-jersey/src/test/java/com/baeldung/server/JerseyApiLiveTest.java