From 30942962eb53419f60f28632ada09200bc070d99 Mon Sep 17 00:00:00 2001
From: Solomon Ayalew <solxget@amazon.com>
Date: Fri, 8 Mar 2024 13:06:56 -0800
Subject: [PATCH] Replace Javax with Jakarta

---
 notification-core/pom.xml                     | 11 +++-
 .../api/GlobalErrorController.java            |  2 +-
 .../auth/AuthorizationFilter.java             |  2 +-
 .../auth/EntitlementsClientFactory.java       |  3 -
 .../di/CredentialHeadersProvider.java         |  2 +-
 .../osdu/notification/di/RequestInfoExt.java  |  6 +-
 .../errors/SpringExceptionMapper.java         |  4 +-
 .../logging/ResponseLogFilter.java            |  6 +-
 .../utils/NotificationFilter.java             |  6 +-
 .../api/GlobalErrorControllerTest.java        |  2 +-
 .../auth/AuthorizationFilterTest.java         |  2 +-
 .../di/CredentialHeadersProviderTest.java     |  2 +-
 .../notification/di/RequestInfoExtTest.java   |  2 +-
 .../errors/SpringExceptionMapperTest.java     |  4 +-
 .../logging/ResponseLogFilterTest.java        | 10 +--
 .../utils/NotificationFilterTest.java         | 12 ++--
 pom.xml                                       | 66 ++++++++++---------
 provider/notification-aws/pom.xml             | 22 ++++++-
 .../impl/AwsPubsubRequestBodyExtractor.java   |  2 +-
 .../impl/NotificationQueueServiceImpl.java    |  2 +-
 .../provider/aws/security/KmsHelper.java      |  2 +-
 .../aws/security/ThreadSignatureService.java  |  2 +-
 .../AwsPubsubRequestBodyExtractorTest.java    |  2 +-
 provider/notification-azure/pom.xml           | 14 +++-
 .../thread/ThreadSignatureService.java        |  2 +-
 .../pubsub/EventGridRequestBodyExtractor.java |  2 +-
 .../azure/util/AzureCosmosProperties.java     |  2 +-
 .../azure/util/AzureKeyVaultProperties.java   |  2 +-
 .../provider/azure/util/HandshakeFilter.java  | 16 ++---
 .../provider/azure/util/Slf4jMDCFilter.java   | 10 +--
 .../EventGridRequestBodyExtractorTest.java    |  6 +-
 .../azure/util/HandshakeFilterTest.java       | 10 +--
 provider/notification-gc/pom.xml              | 20 ++++++
 .../gcp/pubsub/MessageBrokerProvider.java     |  2 +-
 .../gcp/pubsub/OqmSubscriberManager.java      |  2 +-
 .../pubsub/PubsubRequestBodyExtractor.java    |  2 +-
 provider/notification-ibm/pom.xml             |  8 ++-
 .../pubsub/PubsubRequestBodyExtractor.java    |  2 +-
 testing/notification-test-baremetal/pom.xml   |  4 +-
 testing/notification-test-core/pom.xml        | 12 ++--
 testing/notification-test-gc/pom.xml          |  4 +-
 testing/notification-test-ibm/pom.xml         |  4 +-
 42 files changed, 181 insertions(+), 117 deletions(-)

diff --git a/notification-core/pom.xml b/notification-core/pom.xml
index 5ce4b99df..8c58ea185 100644
--- a/notification-core/pom.xml
+++ b/notification-core/pom.xml
@@ -43,7 +43,7 @@
         <dependencies>
             <dependency>
                 <groupId>org.opengroup.osdu</groupId>
-                <artifactId>os-core-common</artifactId>
+                <artifactId>os-core-common-spring6</artifactId>
                 <version>${os-core-common.version}</version>
                 <type>pom</type>
                 <scope>import</scope>
@@ -64,7 +64,7 @@
     <dependencies>
         <dependency>
             <groupId>org.opengroup.osdu</groupId>
-            <artifactId>os-core-common</artifactId>
+            <artifactId>os-core-common-spring6</artifactId>
         </dependency>
 
         <dependency>
@@ -274,7 +274,14 @@
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-annotations</artifactId>
         </dependency>
+        <dependency>
+		    <groupId>jakarta.servlet</groupId>
+		    <artifactId>jakarta.servlet-api</artifactId>
+		    <version>6.0.0</version>
+		    <scope>provided</scope>
+		</dependency>
     </dependencies>
+    
     <build>
         <plugins>
             <plugin>
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/api/GlobalErrorController.java b/notification-core/src/main/java/org/opengroup/osdu/notification/api/GlobalErrorController.java
index ba530936f..9219e0578 100644
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/api/GlobalErrorController.java
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/api/GlobalErrorController.java
@@ -28,7 +28,7 @@ import org.springframework.web.bind.annotation.PutMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 
 @Hidden
 @RequestMapping("/error")
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/auth/AuthorizationFilter.java b/notification-core/src/main/java/org/opengroup/osdu/notification/auth/AuthorizationFilter.java
index a69afee52..31ac34da9 100644
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/auth/AuthorizationFilter.java
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/auth/AuthorizationFilter.java
@@ -28,7 +28,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.web.context.annotation.RequestScope;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.util.Arrays;
 
 @Component("authorizationFilter")
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/auth/EntitlementsClientFactory.java b/notification-core/src/main/java/org/opengroup/osdu/notification/auth/EntitlementsClientFactory.java
index 6076dd1a5..f07b567b5 100644
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/auth/EntitlementsClientFactory.java
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/auth/EntitlementsClientFactory.java
@@ -22,12 +22,9 @@ import org.opengroup.osdu.core.common.entitlements.IEntitlementsFactory;
 import org.opengroup.osdu.core.common.http.json.HttpResponseBodyMapper;
 import org.opengroup.osdu.notification.provider.interfaces.IAppProperties;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.config.AbstractFactoryBean;
 import org.springframework.stereotype.Component;
 
-import javax.inject.Inject;
-
 
 @Component
 public class EntitlementsClientFactory extends AbstractFactoryBean<IEntitlementsFactory> {
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/di/CredentialHeadersProvider.java b/notification-core/src/main/java/org/opengroup/osdu/notification/di/CredentialHeadersProvider.java
index 85dc9d1dc..231ceaaf7 100644
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/di/CredentialHeadersProvider.java
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/di/CredentialHeadersProvider.java
@@ -31,7 +31,7 @@ import org.opengroup.osdu.core.common.model.http.AppException;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.context.annotation.RequestScope;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 
 @Component
 @RequestScope
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/di/RequestInfoExt.java b/notification-core/src/main/java/org/opengroup/osdu/notification/di/RequestInfoExt.java
index 7db3d5c59..3ae35d2ce 100644
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/di/RequestInfoExt.java
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/di/RequestInfoExt.java
@@ -24,9 +24,9 @@ import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Component;
 import org.springframework.web.context.annotation.RequestScope;
 
-import javax.annotation.PostConstruct;
-import javax.inject.Inject;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.annotation.PostConstruct;
+import jakarta.inject.Inject;
+import jakarta.servlet.http.HttpServletRequest;
 import java.util.Collections;
 import java.util.Map;
 import java.util.stream.Collectors;
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/errors/SpringExceptionMapper.java b/notification-core/src/main/java/org/opengroup/osdu/notification/errors/SpringExceptionMapper.java
index 81b31a786..f4a79ecaf 100644
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/errors/SpringExceptionMapper.java
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/errors/SpringExceptionMapper.java
@@ -33,7 +33,7 @@ import org.springframework.web.bind.annotation.ExceptionHandler;
 import org.springframework.web.context.request.WebRequest;
 import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler;
 import org.opengroup.osdu.core.common.model.http.AppException;
-import javax.validation.ValidationException;
+import jakarta.validation.ValidationException;
 import java.io.IOException;
 import java.nio.file.AccessDeniedException;
 import java.util.List;
@@ -51,7 +51,7 @@ public class SpringExceptionMapper extends ResponseEntityExceptionHandler {
 		return this.getErrorResponse(e);
 	}
 
-	@Override
+//	@Override
 	protected ResponseEntity<Object> handleMethodArgumentNotValid(MethodArgumentNotValidException ex, HttpHeaders headers,
 																  HttpStatus status, WebRequest request) {
 		List<String> errorList = ex
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/logging/ResponseLogFilter.java b/notification-core/src/main/java/org/opengroup/osdu/notification/logging/ResponseLogFilter.java
index 69aad1171..bec48deb1 100644
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/logging/ResponseLogFilter.java
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/logging/ResponseLogFilter.java
@@ -26,9 +26,9 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
-import javax.servlet.*;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.*;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.HashMap;
diff --git a/notification-core/src/main/java/org/opengroup/osdu/notification/utils/NotificationFilter.java b/notification-core/src/main/java/org/opengroup/osdu/notification/utils/NotificationFilter.java
index 8c4ccf80d..6cb99acad 100644
--- a/notification-core/src/main/java/org/opengroup/osdu/notification/utils/NotificationFilter.java
+++ b/notification-core/src/main/java/org/opengroup/osdu/notification/utils/NotificationFilter.java
@@ -20,9 +20,9 @@ import org.opengroup.osdu.core.common.model.http.DpsHeaders;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
-import javax.inject.Inject;
-import javax.servlet.*;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.inject.Inject;
+import jakarta.servlet.*;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.util.Map;
 
diff --git a/notification-core/src/test/java/org/opengroup/osdu/notification/api/GlobalErrorControllerTest.java b/notification-core/src/test/java/org/opengroup/osdu/notification/api/GlobalErrorControllerTest.java
index bb90755de..d960546ec 100644
--- a/notification-core/src/test/java/org/opengroup/osdu/notification/api/GlobalErrorControllerTest.java
+++ b/notification-core/src/test/java/org/opengroup/osdu/notification/api/GlobalErrorControllerTest.java
@@ -22,7 +22,7 @@ import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.mockito.junit.MockitoJUnitRunner;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 
 import static org.junit.Assert.assertEquals;
 import static org.mockito.ArgumentMatchers.eq;
diff --git a/notification-core/src/test/java/org/opengroup/osdu/notification/auth/AuthorizationFilterTest.java b/notification-core/src/test/java/org/opengroup/osdu/notification/auth/AuthorizationFilterTest.java
index eb486ad35..01f449344 100644
--- a/notification-core/src/test/java/org/opengroup/osdu/notification/auth/AuthorizationFilterTest.java
+++ b/notification-core/src/test/java/org/opengroup/osdu/notification/auth/AuthorizationFilterTest.java
@@ -31,7 +31,7 @@ import org.opengroup.osdu.notification.provider.interfaces.IServiceAccountValida
 import org.opengroup.osdu.notification.utils.Config;
 import org.powermock.modules.junit4.PowerMockRunner;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.util.HashMap;
 import java.util.Map;
 
diff --git a/notification-core/src/test/java/org/opengroup/osdu/notification/di/CredentialHeadersProviderTest.java b/notification-core/src/test/java/org/opengroup/osdu/notification/di/CredentialHeadersProviderTest.java
index e7966e43b..7aaf6a944 100644
--- a/notification-core/src/test/java/org/opengroup/osdu/notification/di/CredentialHeadersProviderTest.java
+++ b/notification-core/src/test/java/org/opengroup/osdu/notification/di/CredentialHeadersProviderTest.java
@@ -12,7 +12,7 @@ import org.opengroup.osdu.core.common.util.IServiceAccountJwtClient;
 import org.opengroup.osdu.notification.provider.interfaces.IPubsubRequestBodyExtractor;
 import org.springframework.web.bind.annotation.RequestMethod;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.util.HashMap;
 import java.util.Map;
 
diff --git a/notification-core/src/test/java/org/opengroup/osdu/notification/di/RequestInfoExtTest.java b/notification-core/src/test/java/org/opengroup/osdu/notification/di/RequestInfoExtTest.java
index 16e3f8c80..dd155cb04 100644
--- a/notification-core/src/test/java/org/opengroup/osdu/notification/di/RequestInfoExtTest.java
+++ b/notification-core/src/test/java/org/opengroup/osdu/notification/di/RequestInfoExtTest.java
@@ -28,7 +28,7 @@ import org.opengroup.osdu.core.common.model.http.DpsHeaders;
 import org.opengroup.osdu.notification.provider.interfaces.IAppProperties;
 import org.opengroup.osdu.notification.provider.interfaces.IPubsubRequestBodyExtractor;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.util.HashMap;
 import java.util.Map;
 
diff --git a/notification-core/src/test/java/org/opengroup/osdu/notification/errors/SpringExceptionMapperTest.java b/notification-core/src/test/java/org/opengroup/osdu/notification/errors/SpringExceptionMapperTest.java
index 718055c61..cd9ba2778 100644
--- a/notification-core/src/test/java/org/opengroup/osdu/notification/errors/SpringExceptionMapperTest.java
+++ b/notification-core/src/test/java/org/opengroup/osdu/notification/errors/SpringExceptionMapperTest.java
@@ -27,8 +27,8 @@ import org.opengroup.osdu.core.common.model.http.AppException;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.context.request.WebRequest;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.xml.bind.ValidationException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.xml.bind.ValidationException;
 import java.io.IOException;
 import java.nio.file.AccessDeniedException;
 import java.util.Objects;
diff --git a/notification-core/src/test/java/org/opengroup/osdu/notification/logging/ResponseLogFilterTest.java b/notification-core/src/test/java/org/opengroup/osdu/notification/logging/ResponseLogFilterTest.java
index 945ef7fda..5a06307a3 100644
--- a/notification-core/src/test/java/org/opengroup/osdu/notification/logging/ResponseLogFilterTest.java
+++ b/notification-core/src/test/java/org/opengroup/osdu/notification/logging/ResponseLogFilterTest.java
@@ -27,11 +27,11 @@ import org.opengroup.osdu.core.common.model.http.DpsHeaders;
 import org.opengroup.osdu.core.common.model.http.Request;
 import org.opengroup.osdu.notification.di.RequestInfoExt;
 
-import javax.servlet.FilterChain;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 
 import static org.mockito.ArgumentMatchers.any;
diff --git a/notification-core/src/test/java/org/opengroup/osdu/notification/utils/NotificationFilterTest.java b/notification-core/src/test/java/org/opengroup/osdu/notification/utils/NotificationFilterTest.java
index ae67d0617..de8799c0f 100644
--- a/notification-core/src/test/java/org/opengroup/osdu/notification/utils/NotificationFilterTest.java
+++ b/notification-core/src/test/java/org/opengroup/osdu/notification/utils/NotificationFilterTest.java
@@ -24,12 +24,12 @@ import org.mockito.Spy;
 import org.mockito.junit.MockitoJUnitRunner;
 import org.opengroup.osdu.core.common.model.http.DpsHeaders;
 
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 
 import static org.junit.Assert.assertEquals;
diff --git a/pom.xml b/pom.xml
index 9db092f89..11c78c44e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@
 		<java.version>17</java.version>
 		<maven.compiler.target>${java.version}</maven.compiler.target>
 		<maven.compiler.source>${java.version}</maven.compiler.source>
-		<os-core-common.version>0.25.0-rc2</os-core-common.version>
+		<os-core-common.version>0.26.0-rc2</os-core-common.version>
 		<log4j2.version>2.17.1</log4j2.version>
 		<json-smart.version>2.5.0</json-smart.version>
 		<openapi.version>1.6.14</openapi.version>
@@ -63,7 +63,7 @@
 
 			<dependency>
 				<groupId>org.opengroup.osdu</groupId>
-				<artifactId>os-core-common</artifactId>
+				<artifactId>os-core-common-spring6</artifactId>
 				<version>${os-core-common.version}</version>
 			</dependency>
 
@@ -110,35 +110,39 @@
 			<version>1.18.26</version>
 			<scope>provided</scope>
 		</dependency>
-	<!-- swagger dependency -->
-	<dependency>
-		<groupId>org.springdoc</groupId>
-		<artifactId>springdoc-openapi-ui</artifactId>
-		<version>${openapi.version}</version>
-        <exclusions>
-        	<exclusion>
-        		<groupId>org.yaml</groupId>
-        		<artifactId>snakeyaml</artifactId>
-        	</exclusion>
-        </exclusions>
-	</dependency>
-	<dependency>
-		<groupId>org.springframework.plugin</groupId>
-		<artifactId>spring-plugin-core</artifactId>
-		<version>2.0.0.RELEASE</version>
-	</dependency>
-	<dependency>
-		<groupId>org.springframework.plugin</groupId>
-		<artifactId>spring-plugin-metadata</artifactId>
-		<version>2.0.0.RELEASE</version>
-		<exclusions>
-			<exclusion>
-				<groupId>org.springframework.plugin</groupId>
-				<artifactId>spring-plugin-core</artifactId>
-			</exclusion>
-		</exclusions>
-	</dependency>
-    	
+		<!-- swagger dependency -->
+		<dependency>
+			<groupId>org.springdoc</groupId>
+			<artifactId>springdoc-openapi-ui</artifactId>
+			<version>${openapi.version}</version>
+	        <exclusions>
+	        	<exclusion>
+	        		<groupId>org.yaml</groupId>
+	        		<artifactId>snakeyaml</artifactId>
+	        	</exclusion>
+	        </exclusions>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.plugin</groupId>
+			<artifactId>spring-plugin-core</artifactId>
+			<version>2.0.0.RELEASE</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.plugin</groupId>
+			<artifactId>spring-plugin-metadata</artifactId>
+			<version>2.0.0.RELEASE</version>
+			<exclusions>
+				<exclusion>
+					<groupId>org.springframework.plugin</groupId>
+					<artifactId>spring-plugin-core</artifactId>
+				</exclusion>
+			</exclusions>
+		</dependency>
+	    <dependency>
+		    <groupId>jakarta.ws.rs</groupId>
+		    <artifactId>jakarta.ws.rs-api</artifactId>
+		    <version>3.1.0</version>
+		</dependency>	
 	</dependencies>
 
 	<modules>
diff --git a/provider/notification-aws/pom.xml b/provider/notification-aws/pom.xml
index 934096055..11fc41ee8 100644
--- a/provider/notification-aws/pom.xml
+++ b/provider/notification-aws/pom.xml
@@ -74,7 +74,7 @@
 				    <artifactId>spring-beans</artifactId>
             	</exclusion>
             </exclusions>
-            <version>0.26.0-rc2</version>
+            <version>0.26.0-spring6-rc1</version>
         </dependency>
         <dependency>
             <groupId>commons-io</groupId>
@@ -131,7 +131,25 @@
             <artifactId>jackson-annotations</artifactId>
             <version>${jackson.version}</version>
         </dependency>
-
+        
+        <dependency>
+		    <groupId>jakarta.xml.bind</groupId>
+		    <artifactId>jakarta.xml.bind-api</artifactId>
+		    <version>4.0.2</version>
+		</dependency>
+		
+		<dependency>
+    		<groupId>jakarta.annotation</groupId>
+		    <artifactId>jakarta.annotation-api</artifactId>
+		    <version>2.1.1</version>
+		</dependency>
+		
+		<dependency>
+		    <groupId>jakarta.servlet</groupId>
+		    <artifactId>jakarta.servlet-api</artifactId>
+		    <version>6.0.0</version>
+		    <scope>provided</scope>
+		</dependency>
     </dependencies>
 
     <build>
diff --git a/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/impl/AwsPubsubRequestBodyExtractor.java b/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/impl/AwsPubsubRequestBodyExtractor.java
index 240b7b40a..c1e518b00 100644
--- a/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/impl/AwsPubsubRequestBodyExtractor.java
+++ b/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/impl/AwsPubsubRequestBodyExtractor.java
@@ -26,7 +26,7 @@ import org.springframework.http.HttpStatus;
 import org.springframework.stereotype.Component;
 import org.springframework.web.context.annotation.RequestScope;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.util.Base64;
diff --git a/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/queue/impl/NotificationQueueServiceImpl.java b/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/queue/impl/NotificationQueueServiceImpl.java
index 2c0d79d77..6cc80cb34 100644
--- a/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/queue/impl/NotificationQueueServiceImpl.java
+++ b/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/queue/impl/NotificationQueueServiceImpl.java
@@ -38,7 +38,7 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
 import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.Base64;
diff --git a/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/security/KmsHelper.java b/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/security/KmsHelper.java
index 141c29d90..f056ed413 100644
--- a/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/security/KmsHelper.java
+++ b/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/security/KmsHelper.java
@@ -30,7 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
 import java.nio.ByteBuffer;
 import java.util.Collections;
 
diff --git a/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/security/ThreadSignatureService.java b/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/security/ThreadSignatureService.java
index e68d8917e..b42a55e74 100644
--- a/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/security/ThreadSignatureService.java
+++ b/provider/notification-aws/src/main/java/org/opengroup/osdu/notification/provider/aws/security/ThreadSignatureService.java
@@ -20,7 +20,7 @@ import java.util.Base64;
 
 import javax.crypto.Mac;
 import javax.crypto.spec.SecretKeySpec;
-import javax.xml.bind.DatatypeConverter;
+import jakarta.xml.bind.DatatypeConverter;
 
 import org.apache.commons.lang3.StringUtils;
 import org.opengroup.osdu.core.common.cryptographic.HmacData;
diff --git a/provider/notification-aws/src/test/java/org/opengroup/osdu/notification/provider/aws/AwsPubsubRequestBodyExtractorTest.java b/provider/notification-aws/src/test/java/org/opengroup/osdu/notification/provider/aws/AwsPubsubRequestBodyExtractorTest.java
index b43a19ae2..0fe8c0d12 100644
--- a/provider/notification-aws/src/test/java/org/opengroup/osdu/notification/provider/aws/AwsPubsubRequestBodyExtractorTest.java
+++ b/provider/notification-aws/src/test/java/org/opengroup/osdu/notification/provider/aws/AwsPubsubRequestBodyExtractorTest.java
@@ -30,7 +30,7 @@ import org.opengroup.osdu.core.common.model.http.DpsHeaders;
 import org.opengroup.osdu.notification.provider.aws.impl.AwsPubsubRequestBodyExtractor;
 
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.StringReader;
diff --git a/provider/notification-azure/pom.xml b/provider/notification-azure/pom.xml
index 26cec8a66..5234e4e03 100644
--- a/provider/notification-azure/pom.xml
+++ b/provider/notification-azure/pom.xml
@@ -144,7 +144,7 @@
     </dependency>
     <dependency>
       <groupId>org.opengroup.osdu</groupId>
-      <artifactId>os-core-common</artifactId>
+      <artifactId>os-core-common-spring6</artifactId>
       <version>${os-core-common.version}</version>
     </dependency>
     <dependency>
@@ -268,6 +268,18 @@
       <groupId>com.fasterxml.jackson.core</groupId>
       <artifactId>jackson-annotations</artifactId>
     </dependency>
+    
+    <dependency>
+	    <groupId>jakarta.xml.bind</groupId>
+	    <artifactId>jakarta.xml.bind-api</artifactId>
+	    <version>4.0.2</version>
+	</dependency>
+		<dependency>
+	    <groupId>jakarta.servlet</groupId>
+	    <artifactId>jakarta.servlet-api</artifactId>
+	    <version>6.0.0</version>
+	    <scope>provided</scope>
+	</dependency>
   </dependencies>
 
   <build>
diff --git a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/messageBus/thread/ThreadSignatureService.java b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/messageBus/thread/ThreadSignatureService.java
index efadcda49..f9a50cd70 100644
--- a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/messageBus/thread/ThreadSignatureService.java
+++ b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/messageBus/thread/ThreadSignatureService.java
@@ -14,7 +14,7 @@ import org.springframework.stereotype.Component;
 
 import javax.crypto.Mac;
 import javax.crypto.spec.SecretKeySpec;
-import javax.xml.bind.DatatypeConverter;
+import jakarta.xml.bind.DatatypeConverter;
 import java.nio.charset.StandardCharsets;
 import java.security.SecureRandom;
 import java.util.Base64;
diff --git a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/pubsub/EventGridRequestBodyExtractor.java b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/pubsub/EventGridRequestBodyExtractor.java
index fb5ba29ef..c85c70fcc 100644
--- a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/pubsub/EventGridRequestBodyExtractor.java
+++ b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/pubsub/EventGridRequestBodyExtractor.java
@@ -32,7 +32,7 @@ import org.springframework.http.HttpStatus;
 import org.springframework.stereotype.Component;
 import org.springframework.web.context.annotation.RequestScope;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStream;
diff --git a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/AzureCosmosProperties.java b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/AzureCosmosProperties.java
index 7a9fef373..9db75abc7 100644
--- a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/AzureCosmosProperties.java
+++ b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/AzureCosmosProperties.java
@@ -1,6 +1,6 @@
 package org.opengroup.osdu.notification.provider.azure.util;
 
-import javax.inject.Named;
+import jakarta.inject.Named;
 
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
diff --git a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/AzureKeyVaultProperties.java b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/AzureKeyVaultProperties.java
index 6c4fe6f19..2e459b7af 100644
--- a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/AzureKeyVaultProperties.java
+++ b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/AzureKeyVaultProperties.java
@@ -4,7 +4,7 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.stereotype.Component;
 
-import javax.inject.Named;
+import jakarta.inject.Named;
 
 @Component
 public class AzureKeyVaultProperties {
diff --git a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/HandshakeFilter.java b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/HandshakeFilter.java
index 7e70bf2ec..d2830e13e 100644
--- a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/HandshakeFilter.java
+++ b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/HandshakeFilter.java
@@ -21,14 +21,14 @@ import java.io.PrintWriter;
 import java.util.List;
 import java.util.Map;
 
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.FilterConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.opengroup.osdu.notification.provider.interfaces.IPubsubHandshakeHandler;
 import org.opengroup.osdu.notification.provider.interfaces.IPubsubRequestBodyExtractor;
diff --git a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/Slf4jMDCFilter.java b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/Slf4jMDCFilter.java
index 97c62bf56..cd1f59a5a 100644
--- a/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/Slf4jMDCFilter.java
+++ b/provider/notification-azure/src/main/java/org/opengroup/osdu/notification/provider/azure/util/Slf4jMDCFilter.java
@@ -4,11 +4,11 @@ import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
 
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRequest;
+import jakarta.servlet.ServletResponse;
 
 import org.opengroup.osdu.azure.util.AuthUtils;
 import org.opengroup.osdu.core.common.model.http.DpsHeaders;
diff --git a/provider/notification-azure/src/test/java/org/opengroup/osdu/notification/provider/azure/pubsub/EventGridRequestBodyExtractorTest.java b/provider/notification-azure/src/test/java/org/opengroup/osdu/notification/provider/azure/pubsub/EventGridRequestBodyExtractorTest.java
index 803290c96..6960edddb 100644
--- a/provider/notification-azure/src/test/java/org/opengroup/osdu/notification/provider/azure/pubsub/EventGridRequestBodyExtractorTest.java
+++ b/provider/notification-azure/src/test/java/org/opengroup/osdu/notification/provider/azure/pubsub/EventGridRequestBodyExtractorTest.java
@@ -23,9 +23,9 @@ import org.opengroup.osdu.core.common.logging.JaxRsDpsLog;
 import org.opengroup.osdu.core.common.model.http.AppException;
 import org.springframework.http.HttpStatus;
 
-import javax.servlet.ReadListener;
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.ReadListener;
+import jakarta.servlet.ServletInputStream;
+import jakarta.servlet.http.HttpServletRequest;
 import java.io.BufferedReader;
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
diff --git a/provider/notification-azure/src/test/java/org/opengroup/osdu/notification/provider/azure/util/HandshakeFilterTest.java b/provider/notification-azure/src/test/java/org/opengroup/osdu/notification/provider/azure/util/HandshakeFilterTest.java
index 97bc65fc6..9983e9697 100644
--- a/provider/notification-azure/src/test/java/org/opengroup/osdu/notification/provider/azure/util/HandshakeFilterTest.java
+++ b/provider/notification-azure/src/test/java/org/opengroup/osdu/notification/provider/azure/util/HandshakeFilterTest.java
@@ -23,11 +23,11 @@ import org.mockito.junit.MockitoJUnitRunner;
 import org.opengroup.osdu.notification.provider.interfaces.IPubsubHandshakeHandler;
 import org.opengroup.osdu.notification.provider.interfaces.IPubsubRequestBodyExtractor;
 
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.FilterChain;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 
diff --git a/provider/notification-gc/pom.xml b/provider/notification-gc/pom.xml
index 273626d8d..d1b02941c 100644
--- a/provider/notification-gc/pom.xml
+++ b/provider/notification-gc/pom.xml
@@ -129,6 +129,26 @@
             <artifactId>snakeyaml</artifactId>
             <version>${snakeyaml-version}</version>
         </dependency>
+        
+    	<dependency>
+		    <groupId>jakarta.servlet</groupId>
+		    <artifactId>jakarta.servlet-api</artifactId>
+		    <version>6.0.0</version>
+		    <scope>provided</scope>
+		</dependency>
+		
+		<dependency>
+		    <groupId>jakarta.validation</groupId>
+		    <artifactId>jakarta.validation-api</artifactId>
+		    <version>3.0.2</version>
+		</dependency>
+		
+		<dependency>
+		    <groupId>jakarta.annotation</groupId>
+		    <artifactId>jakarta.annotation-api</artifactId>
+		    <version>2.1.1</version>
+		</dependency>
+
     </dependencies>
 
     <build>
diff --git a/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/MessageBrokerProvider.java b/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/MessageBrokerProvider.java
index cdd935b2a..cf14325ce 100644
--- a/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/MessageBrokerProvider.java
+++ b/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/MessageBrokerProvider.java
@@ -13,7 +13,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
 import org.springframework.http.HttpStatus;
 import org.springframework.stereotype.Component;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 
 import static org.opengroup.osdu.notification.provider.gcp.pubsub.OqmSubscriberManager.*;
diff --git a/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/OqmSubscriberManager.java b/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/OqmSubscriberManager.java
index 2c51db098..8485d0939 100644
--- a/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/OqmSubscriberManager.java
+++ b/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/OqmSubscriberManager.java
@@ -31,7 +31,7 @@ import org.opengroup.osdu.notification.provider.gcp.service.RegisterSubscription
 import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
 import java.util.List;
 import java.util.stream.Collectors;
 
diff --git a/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/PubsubRequestBodyExtractor.java b/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/PubsubRequestBodyExtractor.java
index 2a4ad0f2c..4933ac5b3 100644
--- a/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/PubsubRequestBodyExtractor.java
+++ b/provider/notification-gc/src/main/java/org/opengroup/osdu/notification/provider/gcp/pubsub/PubsubRequestBodyExtractor.java
@@ -31,7 +31,7 @@ import org.springframework.http.HttpStatus;
 import org.springframework.stereotype.Component;
 import org.springframework.web.context.annotation.RequestScope;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.util.Base64;
diff --git a/provider/notification-ibm/pom.xml b/provider/notification-ibm/pom.xml
index 40e4af989..c84130d4a 100644
--- a/provider/notification-ibm/pom.xml
+++ b/provider/notification-ibm/pom.xml
@@ -52,7 +52,7 @@
     <dependencies>
       <!--   <dependency>
             <groupId>org.opengroup.osdu</groupId>
-            <artifactId>os-core-common</artifactId>
+            <artifactId>os-core-common-spring6</artifactId>
         </dependency> -->
      
         
@@ -190,6 +190,12 @@
             <version>4.12</version>
             <scope>test</scope>
         </dependency>
+        <dependency>
+		    <groupId>jakarta.servlet</groupId>
+		    <artifactId>jakarta.servlet-api</artifactId>
+		    <version>6.0.0</version>
+		    <scope>provided</scope>
+		</dependency>
     </dependencies>
 
     <build>
diff --git a/provider/notification-ibm/src/main/java/org/opengroup/osdu/notification/provider/ibm/pubsub/PubsubRequestBodyExtractor.java b/provider/notification-ibm/src/main/java/org/opengroup/osdu/notification/provider/ibm/pubsub/PubsubRequestBodyExtractor.java
index 88454680f..16be5dd70 100644
--- a/provider/notification-ibm/src/main/java/org/opengroup/osdu/notification/provider/ibm/pubsub/PubsubRequestBodyExtractor.java
+++ b/provider/notification-ibm/src/main/java/org/opengroup/osdu/notification/provider/ibm/pubsub/PubsubRequestBodyExtractor.java
@@ -19,7 +19,7 @@ import org.springframework.http.HttpStatus;
 import org.springframework.stereotype.Component;
 import org.springframework.web.context.annotation.RequestScope;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.util.Base64;
diff --git a/testing/notification-test-baremetal/pom.xml b/testing/notification-test-baremetal/pom.xml
index 504dea3f9..d7b327ec9 100644
--- a/testing/notification-test-baremetal/pom.xml
+++ b/testing/notification-test-baremetal/pom.xml
@@ -45,8 +45,8 @@
         </dependency>
         <dependency>
             <groupId>org.opengroup.osdu</groupId>
-            <artifactId>os-core-common</artifactId>
-            <version>0.25.0-rc2</version>
+            <artifactId>os-core-common-spring6</artifactId>
+            <version>0.26.0-rc2</version>
         </dependency>
         <dependency>
             <groupId>org.projectlombok</groupId>
diff --git a/testing/notification-test-core/pom.xml b/testing/notification-test-core/pom.xml
index 8a2fbbf95..b7a911d7d 100644
--- a/testing/notification-test-core/pom.xml
+++ b/testing/notification-test-core/pom.xml
@@ -60,8 +60,8 @@
         </dependency>
         <dependency>
             <groupId>org.opengroup.osdu</groupId>
-            <artifactId>os-core-common</artifactId>
-            <version>0.25.0-rc2</version>
+            <artifactId>os-core-common-spring6</artifactId>
+            <version>0.26.0-rc2</version>
             <exclusions>
                 <exclusion>
                     <groupId>org.springframework.boot</groupId>
@@ -74,10 +74,10 @@
             </exclusions>
         </dependency>
         <dependency>
-            <groupId>javax.json</groupId>
-            <artifactId>javax.json-api</artifactId>
-            <version>1.1.4</version>
-        </dependency>
+		    <groupId>jakarta.json</groupId>
+		    <artifactId>jakarta.json-api</artifactId>
+		    <version>2.1.3</version>
+		</dependency>
         <dependency>
             <groupId>com.fasterxml.jackson.core</groupId>
             <artifactId>jackson-core</artifactId>
diff --git a/testing/notification-test-gc/pom.xml b/testing/notification-test-gc/pom.xml
index b5df42292..7ec18138e 100644
--- a/testing/notification-test-gc/pom.xml
+++ b/testing/notification-test-gc/pom.xml
@@ -45,8 +45,8 @@
         </dependency>
         <dependency>
             <groupId>org.opengroup.osdu</groupId>
-            <artifactId>os-core-common</artifactId>
-            <version>0.25.0-rc2</version>
+            <artifactId>os-core-common-spring6</artifactId>
+            <version>0.26.0-rc2</version>
         </dependency>
         <dependency>
             <groupId>org.projectlombok</groupId>
diff --git a/testing/notification-test-ibm/pom.xml b/testing/notification-test-ibm/pom.xml
index d41dba257..174f8cc87 100644
--- a/testing/notification-test-ibm/pom.xml
+++ b/testing/notification-test-ibm/pom.xml
@@ -49,8 +49,8 @@
         </dependency>
         <dependency>
             <groupId>org.opengroup.osdu</groupId>
-            <artifactId>os-core-common</artifactId>
-            <version>0.25.0-rc2</version>
+            <artifactId>os-core-common-spring6</artifactId>
+            <version>0.26.0-rc2</version>
         </dependency>
 
 
-- 
GitLab