This is an automated email from the ASF dual-hosted git repository.

gk pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/turbine-core.git

commit b6ed82f931b451038944255a3a2c891799dcb4d9
Author: Georg Kallidis <[email protected]>
AuthorDate: Tue Jul 9 15:53:50 2024 +0200

    Replace javax servlet-api 3.1.0 with jakarta servlet-api 6.1.0, use jakarta 
dependendies commons-email2-jakarta, log4j-jakarta-web and update 
fulcrum-localization and fulcrum-quartz to 2.0.0-SNAPSHOT, fulcrum-intake, 
fulcrum-security and fulcrum-parser to 3.0.1-SNAPSHOT, fulcrum-testcontainer to 
2.0.1-SNAPSHOT. Set Turbine core version to 7-SNAPSHOT
---
 pom.xml                                            |  41 ++++---
 src/java/org/apache/turbine/Turbine.java           |  26 +++--
 .../turbine/modules/layouts/VelocityLayout.java    |   2 +-
 .../org/apache/turbine/modules/pages/JspPage.java  |   2 +-
 .../apache/turbine/modules/screens/JSONScreen.java |   2 +-
 .../turbine/om/security/DefaultUserImpl.java       |   2 +-
 src/java/org/apache/turbine/om/security/User.java  |   2 +-
 .../apache/turbine/pipeline/DefaultLoginValve.java |   2 +-
 .../turbine/pipeline/DefaultSetEncodingValve.java  |   2 +-
 .../turbine/services/jsonrpc/JSONProcessor.java    |   2 +-
 .../turbine/services/jsonrpc/JsonRpcService.java   |   4 +-
 .../services/jsonrpc/TurbineJsonRpcService.java    |   4 +-
 .../apache/turbine/services/jsp/JspService.java    |   2 +-
 .../turbine/services/jsp/TurbineJspService.java    |  10 +-
 .../services/pull/util/DateTimeFormatterTool.java  |   2 +-
 .../services/rundata/DefaultTurbineRunData.java    |  10 +-
 .../turbine/services/rundata/RunDataService.java   |   6 +-
 .../services/rundata/TurbineRunDataService.java    |   8 +-
 .../turbine/services/servlet/ServletService.java   |   4 +-
 .../services/servlet/TurbineServletService.java    |  10 +-
 .../turbine/services/session/SessionListener.java  |   8 +-
 .../turbine/services/session/SessionService.java   |   2 +-
 .../turbine/services/session/SessionTool.java      |   2 +-
 .../services/session/TurbineSessionService.java    |   2 +-
 src/java/org/apache/turbine/util/HttpUtils.java    |   2 +-
 src/java/org/apache/turbine/util/RunData.java      |  10 +-
 src/java/org/apache/turbine/util/ServerData.java   |   2 +-
 src/java/org/apache/turbine/util/ServletUtils.java |   4 +-
 .../org/apache/turbine/util/TurbineConfig.java     | 128 +++++++++------------
 src/java/org/apache/turbine/util/uri/BaseURI.java  |   2 +-
 .../turbine/util/velocity/VelocityEmail.java       |   4 +-
 .../util/velocity/VelocityEmailException.java      |   2 +-
 .../turbine/util/velocity/VelocityHtmlEmail.java   |   4 +-
 src/test/org/apache/turbine/TurbineConfigTest.java |   4 +-
 src/test/org/apache/turbine/TurbineTest.java       |   4 +-
 .../apache/turbine/modules/ActionLoaderTest.java   |   6 +-
 .../apache/turbine/modules/LayoutLoaderTest.java   |   6 +-
 .../pipeline/DefaultACLCreationValveTest.java      |   6 +-
 .../turbine/pipeline/DefaultLoginValveTest.java    |   8 +-
 .../pipeline/DefaultSessionTimeoutValveTest.java   |   6 +-
 .../DefaultSessionValidationValveTest.java         |   6 +-
 .../pipeline/DefaultSetEncodingValveTest.java      |   6 +-
 .../turbine/pipeline/DetermineActionValveTest.java |   6 +-
 .../turbine/pipeline/DetermineTargetValveTest.java |   6 +-
 .../turbine/pipeline/ExecutePageValveTest.java     |   8 +-
 .../turbine/services/intake/IntakeToolTest.java    |   6 +-
 .../localization/DateTimeFormatterServiceTest.java |   6 +-
 .../localization/LocalizationToolTest.java         |   6 +-
 .../localization/RundataLocalizationToolTest.java  |   6 +-
 .../urlmapper/TurbineURLMapperJSONServiceTest.java |   6 +-
 .../urlmapper/TurbineURLMapperServiceTest.java     |   4 +-
 .../urlmapper/TurbineURLMapperYAMLServiceTest.java |   6 +-
 src/test/org/apache/turbine/test/BaseTestCase.java |   8 +-
 .../apache/turbine/util/uri/TurbineURITest.java    |   2 +-
 54 files changed, 216 insertions(+), 221 deletions(-)

diff --git a/pom.xml b/pom.xml
index 7ab2cbfb..2a338130 100644
--- a/pom.xml
+++ b/pom.xml
@@ -27,7 +27,7 @@
   </parent>
   <artifactId>turbine</artifactId>
   <name>Apache Turbine</name>
-  <version>6.1-SNAPSHOT</version>
+  <version>7.0-SNAPSHOT</version>
   <description>Turbine is a servlet based framework that allows experienced 
Java
     developers to quickly build secure web applications. Parts of Turbine
     can also be used independently of the web portion of Turbine as
@@ -882,11 +882,11 @@
 
   <dependencies>
        <dependency>
-           <groupId>javax.servlet</groupId>
-           <artifactId>javax.servlet-api</artifactId>
-           <version>3.1.0</version>
-           <scope>provided</scope>
-       </dependency>
+        <groupId>jakarta.servlet</groupId>
+        <artifactId>jakarta.servlet-api</artifactId>
+        <version>6.1.0</version>
+        <!--scope>provided</scope-->
+     </dependency>
     <dependency>
       <groupId>org.apache.avalon.framework</groupId>
       <artifactId>avalon-framework-api</artifactId>
@@ -902,10 +902,15 @@
       <artifactId>commons-configuration2</artifactId>
       <version>2.10.1</version>
     </dependency>
-    <dependency>
+    <!--dependency>
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-email</artifactId>
       <version>1.6.0</version>
+    </dependency-->
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-email2-jakarta</artifactId>
+      <version>2.0.0-M1-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.apache.commons</groupId>
@@ -953,7 +958,7 @@
     <dependency>
       <groupId>org.apache.fulcrum</groupId>
       <artifactId>fulcrum-localization</artifactId>
-      <version>1.0.7</version>
+      <version>2.0.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.apache.fulcrum</groupId>
@@ -1039,7 +1044,7 @@
     <dependency>
       <groupId>org.apache.fulcrum</groupId>
       <artifactId>fulcrum-quartz</artifactId>
-      <version>1.1.2</version>
+      <version>2.0.0-SNAPSHOT</version>
     </dependency>
     <!-- suppress owasp CVE-2018-11771, CVE-2018-1324 .. as jython-standalone 
is optional.
      https://github.com/jython/jython/issues/137, 
https://github.com/jython/jython/issues/138 -->
@@ -1105,12 +1110,12 @@
        <version>${turbine.log4j2.version}</version>
     </dependency>
     <!-- support of log4j-web (autodetect of log4j2 in WEB-INF folder) 
-         may allow to remove explicit log4j2 loading/configuration except for 
tests -->
+         may allow to remove explicit log4j2 loading/configuration except for 
tests -->      
     <dependency>
-      <groupId>org.apache.logging.log4j</groupId>
-      <artifactId>log4j-web</artifactId>
-      <version>${turbine.log4j2.version}</version>
-    </dependency>
+        <groupId>org.apache.logging.log4j</groupId>
+        <artifactId>log4j-jakarta-web</artifactId>
+        <version>${turbine.log4j2.version}</version>
+     </dependency>
     <!-- optional log4j1.2 bridge instead of log4j -->
     <dependency>
        <groupId>org.apache.logging.log4j</groupId>
@@ -1137,7 +1142,7 @@
     <dependency>
       <groupId>org.apache.fulcrum</groupId>
       <artifactId>fulcrum-testcontainer</artifactId>
-      <version>2.0.0</version>
+      <version>2.0.1-SNAPSHOT</version>
       <scope>test</scope>
     </dependency> 
     <dependency>
@@ -1389,9 +1394,9 @@
   <properties>
     <!-- maven.compiler setting in turbine parent -->
     <turbine.site.path>turbine-core</turbine.site.path>
-    <fulcrum.intake>3.0.0</fulcrum.intake>
-    <fulcrum.parser>3.0.0</fulcrum.parser>
-    <fulcrum.security>3.0.0</fulcrum.security>
+    <fulcrum.intake>3.0.1-SNAPSHOT</fulcrum.intake>
+    <fulcrum.parser>3.0.1-SNAPSHOT</fulcrum.parser>
+    <fulcrum.security>3.0.1-SNAPSHOT</fulcrum.security>
     <fulcrum.yaafi>2.0.0</fulcrum.yaafi>
     <torque.version>6.0</torque.version>
     <jackson2.version>2.17.1</jackson2.version>
diff --git a/src/java/org/apache/turbine/Turbine.java 
b/src/java/org/apache/turbine/Turbine.java
index 3f3a2fb3..6a427347 100644
--- a/src/java/org/apache/turbine/Turbine.java
+++ b/src/java/org/apache/turbine/Turbine.java
@@ -29,15 +29,15 @@ import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.annotation.MultipartConfig;
-import javax.servlet.annotation.WebInitParam;
-import javax.servlet.annotation.WebServlet;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.annotation.MultipartConfig;
+import jakarta.servlet.annotation.WebInitParam;
+import jakarta.servlet.annotation.WebServlet;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import jakarta.xml.bind.JAXBContext;
 import jakarta.xml.bind.Unmarshaller;
 
@@ -948,10 +948,14 @@ public class Turbine extends HttpServlet
             // configured + no other log4j configuration already found
             if (log4jFile != null)
             {
-                LogManager.getContext(null, false, log4jFile.toUri());
+                org.apache.logging.log4j.spi.LoggerContext ctxContext = 
LogManager.getContext(null, false, log4jFile.toUri());
+                if (ctxContext instanceof LoggerContext) {
+                    log.info("resolved log4j2 location: {}", 
context.getConfiguration().getConfigurationSource().getLocation());
+                }
+                
             }
         }
-        log.info("resolved log4j2 location: {}", 
context.getConfiguration().getConfigurationSource().getLocation());
+        log.info("found log4j2 location: {}", 
context.getConfiguration().getConfigurationSource().getLocation());
     }
 
     /**
diff --git a/src/java/org/apache/turbine/modules/layouts/VelocityLayout.java 
b/src/java/org/apache/turbine/modules/layouts/VelocityLayout.java
index 92613403..58bb9569 100644
--- a/src/java/org/apache/turbine/modules/layouts/VelocityLayout.java
+++ b/src/java/org/apache/turbine/modules/layouts/VelocityLayout.java
@@ -1,7 +1,7 @@
 package org.apache.turbine.modules.layouts;
 
 
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.logging.log4j.LogManager;
 
diff --git a/src/java/org/apache/turbine/modules/pages/JspPage.java 
b/src/java/org/apache/turbine/modules/pages/JspPage.java
index 84c4be4f..416ea0af 100644
--- a/src/java/org/apache/turbine/modules/pages/JspPage.java
+++ b/src/java/org/apache/turbine/modules/pages/JspPage.java
@@ -21,7 +21,7 @@ package org.apache.turbine.modules.pages;
  */
 
 
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.Turbine;
 import org.apache.turbine.annotation.TurbineService;
diff --git a/src/java/org/apache/turbine/modules/screens/JSONScreen.java 
b/src/java/org/apache/turbine/modules/screens/JSONScreen.java
index 8df01ea3..446dd39a 100644
--- a/src/java/org/apache/turbine/modules/screens/JSONScreen.java
+++ b/src/java/org/apache/turbine/modules/screens/JSONScreen.java
@@ -27,7 +27,7 @@ import java.io.PrintWriter;
 import java.nio.charset.Charset;
 import java.nio.charset.StandardCharsets;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 
 import org.apache.turbine.annotation.TurbineService;
 import org.apache.turbine.pipeline.PipelineData;
diff --git a/src/java/org/apache/turbine/om/security/DefaultUserImpl.java 
b/src/java/org/apache/turbine/om/security/DefaultUserImpl.java
index 1f4aecb3..a1ea8f72 100644
--- a/src/java/org/apache/turbine/om/security/DefaultUserImpl.java
+++ b/src/java/org/apache/turbine/om/security/DefaultUserImpl.java
@@ -24,7 +24,7 @@ import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
 
-import javax.servlet.http.HttpSessionBindingEvent;
+import jakarta.servlet.http.HttpSessionBindingEvent;
 
 import org.apache.fulcrum.security.model.turbine.entity.TurbineUser;
 import org.apache.fulcrum.security.model.turbine.entity.TurbineUserGroupRole;
diff --git a/src/java/org/apache/turbine/om/security/User.java 
b/src/java/org/apache/turbine/om/security/User.java
index 3fecf426..298b5545 100644
--- a/src/java/org/apache/turbine/om/security/User.java
+++ b/src/java/org/apache/turbine/om/security/User.java
@@ -23,7 +23,7 @@ import java.util.Date;
 
 import java.util.Map;
 
-import javax.servlet.http.HttpSessionBindingListener;
+import jakarta.servlet.http.HttpSessionBindingListener;
 
 import org.apache.fulcrum.security.model.turbine.entity.TurbineUser;
 
diff --git a/src/java/org/apache/turbine/pipeline/DefaultLoginValve.java 
b/src/java/org/apache/turbine/pipeline/DefaultLoginValve.java
index 22cd00d2..ba2c956b 100644
--- a/src/java/org/apache/turbine/pipeline/DefaultLoginValve.java
+++ b/src/java/org/apache/turbine/pipeline/DefaultLoginValve.java
@@ -26,7 +26,7 @@ import java.util.ArrayList;
 import java.util.Enumeration;
 import java.util.List;
 
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.turbine.TurbineConstants;
 import org.apache.turbine.annotation.TurbineConfiguration;
diff --git a/src/java/org/apache/turbine/pipeline/DefaultSetEncodingValve.java 
b/src/java/org/apache/turbine/pipeline/DefaultSetEncodingValve.java
index 980bd590..4d938c52 100644
--- a/src/java/org/apache/turbine/pipeline/DefaultSetEncodingValve.java
+++ b/src/java/org/apache/turbine/pipeline/DefaultSetEncodingValve.java
@@ -25,7 +25,7 @@ import java.io.IOException;
 import java.io.UnsupportedEncodingException;
 import java.nio.charset.Charset;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
diff --git a/src/java/org/apache/turbine/services/jsonrpc/JSONProcessor.java 
b/src/java/org/apache/turbine/services/jsonrpc/JSONProcessor.java
index 600acca2..3e3ab877 100644
--- a/src/java/org/apache/turbine/services/jsonrpc/JSONProcessor.java
+++ b/src/java/org/apache/turbine/services/jsonrpc/JSONProcessor.java
@@ -21,7 +21,7 @@ package org.apache.turbine.services.jsonrpc;
 
 import java.io.CharArrayWriter;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
diff --git a/src/java/org/apache/turbine/services/jsonrpc/JsonRpcService.java 
b/src/java/org/apache/turbine/services/jsonrpc/JsonRpcService.java
index c58cdb77..13b19088 100644
--- a/src/java/org/apache/turbine/services/jsonrpc/JsonRpcService.java
+++ b/src/java/org/apache/turbine/services/jsonrpc/JsonRpcService.java
@@ -21,8 +21,8 @@ package org.apache.turbine.services.jsonrpc;
 
 import java.io.CharArrayWriter;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.turbine.services.Service;
 import org.jabsorb.JSONRPCBridge;
diff --git 
a/src/java/org/apache/turbine/services/jsonrpc/TurbineJsonRpcService.java 
b/src/java/org/apache/turbine/services/jsonrpc/TurbineJsonRpcService.java
index c8f8ae26..a8aa6c8c 100644
--- a/src/java/org/apache/turbine/services/jsonrpc/TurbineJsonRpcService.java
+++ b/src/java/org/apache/turbine/services/jsonrpc/TurbineJsonRpcService.java
@@ -21,8 +21,8 @@ package org.apache.turbine.services.jsonrpc;
 
 import java.io.CharArrayWriter;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.turbine.services.TurbineBaseService;
 import org.jabsorb.JSONRPCBridge;
diff --git a/src/java/org/apache/turbine/services/jsp/JspService.java 
b/src/java/org/apache/turbine/services/jsp/JspService.java
index f8326c07..0e216a4f 100644
--- a/src/java/org/apache/turbine/services/jsp/JspService.java
+++ b/src/java/org/apache/turbine/services/jsp/JspService.java
@@ -96,7 +96,7 @@ public interface JspService
     /**
      * Searches for a template in the default.template path[s] and
      * returns the template name with a relative path which is required
-     * by <a 
href="http://java.sun.com/products/servlet/2.3/javadoc/javax/servlet/ServletContext.html#getRequestDispatcher(java.lang.String)">javax.servlet.RequestDispatcher</a>
+     * by <a 
href="http://java.sun.com/products/servlet/2.3/javadoc/jakarta/servlet/ServletContext.html#getRequestDispatcher(java.lang.String)">jakarta.servlet.RequestDispatcher</a>
      *
      * @param template The name of the template to search for.
      *
diff --git a/src/java/org/apache/turbine/services/jsp/TurbineJspService.java 
b/src/java/org/apache/turbine/services/jsp/TurbineJspService.java
index 3e7a6364..0d84da28 100644
--- a/src/java/org/apache/turbine/services/jsp/TurbineJspService.java
+++ b/src/java/org/apache/turbine/services/jsp/TurbineJspService.java
@@ -25,8 +25,8 @@ import java.io.File;
 import java.io.IOException;
 import java.util.Arrays;
 
-import javax.servlet.RequestDispatcher;
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.RequestDispatcher;
+import jakarta.servlet.http.HttpServletRequest;
 
 import org.apache.commons.configuration2.Configuration;
 import org.apache.commons.lang3.StringUtils;
@@ -217,7 +217,7 @@ public class TurbineJspService
         Configuration config = getConfiguration();
 
         // Set relative paths from config.
-        // Needed for javax.servlet.RequestDispatcher
+        // Needed for jakarta.servlet.RequestDispatcher
         relativeTemplatePaths = config.getStringArray(TEMPLATE_PATH_KEY);
 
         // Use Turbine Servlet to translate the template paths.
@@ -263,8 +263,8 @@ public class TurbineJspService
     /**
      * Searches for a template in the default.template path[s] and
      * returns the template name with a relative path which is
-     * required by <a 
href="http://java.sun.com/products/servlet/2.3/javadoc/javax/servlet/ServletContext.html#getRequestDispatcher(java.lang.String)">
-     * javax.servlet.RequestDispatcher</a>
+     * required by <a 
href="http://java.sun.com/products/servlet/2.3/javadoc/jakarta/servlet/ServletContext.html#getRequestDispatcher(java.lang.String)">
+     * jakarta.servlet.RequestDispatcher</a>
      *
      * @param template the name of the template
      * @return String
diff --git 
a/src/java/org/apache/turbine/services/pull/util/DateTimeFormatterTool.java 
b/src/java/org/apache/turbine/services/pull/util/DateTimeFormatterTool.java
index e641714e..7e9af051 100644
--- a/src/java/org/apache/turbine/services/pull/util/DateTimeFormatterTool.java
+++ b/src/java/org/apache/turbine/services/pull/util/DateTimeFormatterTool.java
@@ -85,7 +85,7 @@ public class DateTimeFormatterTool extends DateFormatter
      * Locale could be fetched from request, if #USE_REQUEST_LOCALE_KEY is set 
to 
      * <code>true</code> (by default it is <code>false</code>.Then it will be 
retrieved either from 
      * {@link RundataLocalizationService#getLocale(RunData)} (if set in urbien 
role configuration)
-     * or {@link 
LocalizationService#getLocale(javax.servlet.http.HttpServletRequest)}.
+     * or {@link 
LocalizationService#getLocale(jakarta.servlet.http.HttpServletRequest)}.
      * 
      * @param data initialization data
      */
diff --git 
a/src/java/org/apache/turbine/services/rundata/DefaultTurbineRunData.java 
b/src/java/org/apache/turbine/services/rundata/DefaultTurbineRunData.java
index 0230715f..534d8a60 100644
--- a/src/java/org/apache/turbine/services/rundata/DefaultTurbineRunData.java
+++ b/src/java/org/apache/turbine/services/rundata/DefaultTurbineRunData.java
@@ -29,11 +29,11 @@ import java.util.Locale;
 import java.util.Map;
 
 import javax.naming.Context;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.fulcrum.parser.CookieParser;
diff --git a/src/java/org/apache/turbine/services/rundata/RunDataService.java 
b/src/java/org/apache/turbine/services/rundata/RunDataService.java
index 41906e59..8d053db4 100644
--- a/src/java/org/apache/turbine/services/rundata/RunDataService.java
+++ b/src/java/org/apache/turbine/services/rundata/RunDataService.java
@@ -19,9 +19,9 @@ package org.apache.turbine.services.rundata;
  * under the License.
  */
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.services.Service;
 import org.apache.turbine.util.RunData;
diff --git 
a/src/java/org/apache/turbine/services/rundata/TurbineRunDataService.java 
b/src/java/org/apache/turbine/services/rundata/TurbineRunDataService.java
index 908a4d05..f4ba35ea 100644
--- a/src/java/org/apache/turbine/services/rundata/TurbineRunDataService.java
+++ b/src/java/org/apache/turbine/services/rundata/TurbineRunDataService.java
@@ -24,10 +24,10 @@ import java.util.Locale;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.commons.configuration2.Configuration;
 import org.apache.fulcrum.parser.CookieParser;
diff --git a/src/java/org/apache/turbine/services/servlet/ServletService.java 
b/src/java/org/apache/turbine/services/servlet/ServletService.java
index d7cb165d..07d680bc 100644
--- a/src/java/org/apache/turbine/services/servlet/ServletService.java
+++ b/src/java/org/apache/turbine/services/servlet/ServletService.java
@@ -24,8 +24,8 @@ package org.apache.turbine.services.servlet;
 import java.io.InputStream;
 import java.net.URL;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
 
 import org.apache.turbine.services.Service;
 
diff --git 
a/src/java/org/apache/turbine/services/servlet/TurbineServletService.java 
b/src/java/org/apache/turbine/services/servlet/TurbineServletService.java
index 68ec36f9..93e09901 100644
--- a/src/java/org/apache/turbine/services/servlet/TurbineServletService.java
+++ b/src/java/org/apache/turbine/services/servlet/TurbineServletService.java
@@ -25,8 +25,8 @@ import java.io.InputStream;
 import java.net.MalformedURLException;
 import java.net.URL;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
 
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -86,7 +86,7 @@ public class TurbineServletService
      * Returns an URL object for a given URI string.
      * This URI is considered relative to the context.
      *
-     * @see javax.servlet.ServletContext#getResource
+     * @see jakarta.servlet.ServletContext#getResource
      * @param uri the URI to resolve as an URL
      * @return an URL object or null is the uri is malformed or
      * can't be resolved
@@ -125,7 +125,7 @@ public class TurbineServletService
     /**
      * Same as getResource except that it returns an InputStream
      *
-     * @see javax.servlet.ServletContext#getResourceAsStream
+     * @see jakarta.servlet.ServletContext#getResourceAsStream
      * @param uri the URI to resolve
      * @return an InputStream on the URI content or null
      */
@@ -146,7 +146,7 @@ public class TurbineServletService
      * Returns the complete filesystem path for a
      * given URI
      *
-     * @see javax.servlet.ServletContext#getRealPath
+     * @see jakarta.servlet.ServletContext#getRealPath
      * @param uri the URI to resolve
      * @return the full system path of this URI
      */
diff --git a/src/java/org/apache/turbine/services/session/SessionListener.java 
b/src/java/org/apache/turbine/services/session/SessionListener.java
index ca47c26a..02ffc3df 100644
--- a/src/java/org/apache/turbine/services/session/SessionListener.java
+++ b/src/java/org/apache/turbine/services/session/SessionListener.java
@@ -23,9 +23,9 @@ package org.apache.turbine.services.session;
 
 import java.io.Serializable;
 
-import javax.servlet.http.HttpSessionActivationListener;
-import javax.servlet.http.HttpSessionEvent;
-import javax.servlet.http.HttpSessionListener;
+import jakarta.servlet.http.HttpSessionActivationListener;
+import jakarta.servlet.http.HttpSessionEvent;
+import jakarta.servlet.http.HttpSessionListener;
 
 import org.apache.turbine.services.TurbineServices;
 
@@ -56,7 +56,7 @@ import org.apache.turbine.services.TurbineServices;
  * @version $Id$
  * @author <a href="mailto:[email protected]";>Quinton McCombs</a>
  * @author <a href="mailto:[email protected]";>Daniel Rall</a>
- * @see javax.servlet.http.HttpSessionListener
+ * @see jakarta.servlet.http.HttpSessionListener
  */
 public class SessionListener
         implements HttpSessionListener, HttpSessionActivationListener, 
Serializable
diff --git a/src/java/org/apache/turbine/services/session/SessionService.java 
b/src/java/org/apache/turbine/services/session/SessionService.java
index 9a7b901b..1f1e6df7 100644
--- a/src/java/org/apache/turbine/services/session/SessionService.java
+++ b/src/java/org/apache/turbine/services/session/SessionService.java
@@ -23,7 +23,7 @@ package org.apache.turbine.services.session;
 
 import java.util.Collection;
 
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.turbine.om.security.User;
 import org.apache.turbine.services.Service;
diff --git a/src/java/org/apache/turbine/services/session/SessionTool.java 
b/src/java/org/apache/turbine/services/session/SessionTool.java
index 383fa5ff..16049f54 100644
--- a/src/java/org/apache/turbine/services/session/SessionTool.java
+++ b/src/java/org/apache/turbine/services/session/SessionTool.java
@@ -23,7 +23,7 @@ package org.apache.turbine.services.session;
 
 import java.util.Collection;
 
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.turbine.annotation.TurbineService;
 import org.apache.turbine.om.security.User;
diff --git 
a/src/java/org/apache/turbine/services/session/TurbineSessionService.java 
b/src/java/org/apache/turbine/services/session/TurbineSessionService.java
index 54a856a3..352e56ab 100644
--- a/src/java/org/apache/turbine/services/session/TurbineSessionService.java
+++ b/src/java/org/apache/turbine/services/session/TurbineSessionService.java
@@ -26,7 +26,7 @@ import java.util.Collection;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
 
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.turbine.om.security.User;
 import org.apache.turbine.services.TurbineBaseService;
diff --git a/src/java/org/apache/turbine/util/HttpUtils.java 
b/src/java/org/apache/turbine/util/HttpUtils.java
index 66575171..1da74f96 100644
--- a/src/java/org/apache/turbine/util/HttpUtils.java
+++ b/src/java/org/apache/turbine/util/HttpUtils.java
@@ -23,7 +23,7 @@ import java.util.Date;
 import java.util.Locale;
 import java.util.TimeZone;
 
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang3.time.FastDateFormat;
 import org.apache.turbine.Turbine;
diff --git a/src/java/org/apache/turbine/util/RunData.java 
b/src/java/org/apache/turbine/util/RunData.java
index 3883e53f..2b55d795 100644
--- a/src/java/org/apache/turbine/util/RunData.java
+++ b/src/java/org/apache/turbine/util/RunData.java
@@ -28,11 +28,11 @@ import java.util.Locale;
 import java.util.Map;
 
 import javax.naming.Context;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.fulcrum.parser.CookieParser;
 import org.apache.fulcrum.parser.ParameterParser;
diff --git a/src/java/org/apache/turbine/util/ServerData.java 
b/src/java/org/apache/turbine/util/ServerData.java
index c3a3a720..8e6a9df0 100644
--- a/src/java/org/apache/turbine/util/ServerData.java
+++ b/src/java/org/apache/turbine/util/ServerData.java
@@ -21,7 +21,7 @@ package org.apache.turbine.util;
  */
 
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.LogManager;
diff --git a/src/java/org/apache/turbine/util/ServletUtils.java 
b/src/java/org/apache/turbine/util/ServletUtils.java
index c93fee19..8ec00bf5 100644
--- a/src/java/org/apache/turbine/util/ServletUtils.java
+++ b/src/java/org/apache/turbine/util/ServletUtils.java
@@ -26,8 +26,8 @@ import java.io.File;
 import java.util.StringTokenizer;
 import java.util.stream.Stream;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.turbine.Turbine;
diff --git a/src/java/org/apache/turbine/util/TurbineConfig.java 
b/src/java/org/apache/turbine/util/TurbineConfig.java
index fb242744..72f4eff5 100644
--- a/src/java/org/apache/turbine/util/TurbineConfig.java
+++ b/src/java/org/apache/turbine/util/TurbineConfig.java
@@ -35,18 +35,18 @@ import java.util.Map;
 import java.util.Set;
 import java.util.Vector;
 
-import javax.servlet.Filter;
-import javax.servlet.FilterRegistration;
-import javax.servlet.RequestDispatcher;
-import javax.servlet.Servlet;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRegistration;
-import javax.servlet.ServletRegistration.Dynamic;
-import javax.servlet.SessionCookieConfig;
-import javax.servlet.SessionTrackingMode;
-import javax.servlet.descriptor.JspConfigDescriptor;
+import jakarta.servlet.Filter;
+import jakarta.servlet.FilterRegistration;
+import jakarta.servlet.RequestDispatcher;
+import jakarta.servlet.Servlet;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletRegistration;
+import jakarta.servlet.ServletRegistration.Dynamic;
+import jakarta.servlet.SessionCookieConfig;
+import jakarta.servlet.SessionTrackingMode;
+import jakarta.servlet.descriptor.JspConfigDescriptor;
 
 import org.apache.avalon.framework.activity.Disposable;
 import org.apache.avalon.framework.activity.Initializable;
@@ -84,6 +84,8 @@ import org.apache.turbine.annotation.TurbineConfiguration;
  * </p>
  *
  * TODO Make this class enforce the lifecycle contracts
+ * 
+ * @see https://jakarta.ee/specifications/servlet/6.1/jakarta-servlet-spec-6.1
  *
  * @author <a href="mailto:[email protected]";>Quinton McCombs</a>
  * @author <a href="mailto:[email protected]";>Rafal Krzewski</a>
@@ -386,20 +388,6 @@ public class TurbineConfig
         }
     }
 
-    /**
-     * Logs an error message.
-     *
-     * @param e an Exception.
-     * @param m a message.
-     * @deprecated use log(String,Throwable) instead
-     */
-    @Override
-    @Deprecated
-    public void log(Exception e, String m)
-    {
-        log.info(m, e);
-    }
-
     /**
      * Logs a message.
      *
@@ -547,48 +535,6 @@ public class TurbineConfig
         throw new UnsupportedOperationException();
     }
 
-    /**
-     * Not implemented.
-     *
-     * A method in ServletContext interface that is not implemented and will
-     * throw <code>UnsuportedOperationException</code> upon invocation
-     * @deprecated As of Java Servlet API 2.1, with no direct replacement.
-     */
-    @Override
-    @Deprecated
-    public Servlet getServlet(String s)
-    {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * Not implemented.
-     *
-     * A method in ServletContext interface that is not implemented and will
-     * throw <code>UnsuportedOperationException</code> upon invocation
-     * @deprecated As of Java Servlet API 2.1, with no replacement.
-     */
-    @Override
-    @Deprecated
-    public Enumeration<String> getServletNames()
-    {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * Not implemented.
-     *
-     * A method in ServletContext interface that is not implemented and will
-     * throw <code>UnsuportedOperationException</code> upon invocation
-     * @deprecated As of Java Servlet API 2.0, with no replacement.
-     */
-    @Override
-    @Deprecated
-    public Enumeration<Servlet> getServlets()
-    {
-        throw new UnsupportedOperationException();
-    }
-
     /**
      * Not implemented.
      *
@@ -728,7 +674,7 @@ public class TurbineConfig
      * throw <code>UnsuportedOperationException</code> upon invocation
      */
     @Override
-    public javax.servlet.FilterRegistration.Dynamic addFilter(String 
filterName, String className)
+    public jakarta.servlet.FilterRegistration.Dynamic addFilter(String 
filterName, String className)
     {
         throw new UnsupportedOperationException();
     }
@@ -740,7 +686,7 @@ public class TurbineConfig
      * throw <code>UnsuportedOperationException</code> upon invocation
      */
     @Override
-    public javax.servlet.FilterRegistration.Dynamic addFilter(String 
filterName, Filter filter)
+    public jakarta.servlet.FilterRegistration.Dynamic addFilter(String 
filterName, Filter filter)
     {
         throw new UnsupportedOperationException();
     }
@@ -752,7 +698,7 @@ public class TurbineConfig
      * throw <code>UnsuportedOperationException</code> upon invocation
      */
     @Override
-    public javax.servlet.FilterRegistration.Dynamic addFilter(String 
filterName, Class<? extends Filter> filterClass)
+    public jakarta.servlet.FilterRegistration.Dynamic addFilter(String 
filterName, Class<? extends Filter> filterClass)
     {
         throw new UnsupportedOperationException();
     }
@@ -937,4 +883,44 @@ public class TurbineConfig
         throw new UnsupportedOperationException();
     }
 
+    @Override
+    public Dynamic addJspFile(String servletName, String jspFile) {
+        return null;
+    }
+
+    @Override
+    public int getSessionTimeout() {
+        // If the timeout is 0 or less the container ensures the default 
behavior of sessions is never to time out
+        return 0;
+    }
+
+    /**
+     * in minutes
+     */
+    @Override
+    public void setSessionTimeout(int sessionTimeout) {
+        // todo check session.timeout
+    }
+
+    @Override
+    public String getRequestCharacterEncoding() {
+        // no request character encoding is specified in deployment descriptor 
or container specific configuration (
+        return null;
+    }
+
+    @Override
+    public void setRequestCharacterEncoding(String encoding) {
+    }
+
+    @Override
+    public String getResponseCharacterEncoding() {
+        // no response character encoding is specified in deployment 
descriptor or container specific configuration
+        return null;
+    }
+
+    @Override
+    public void setResponseCharacterEncoding(String encoding) {
+        
+    }
+
 }
diff --git a/src/java/org/apache/turbine/util/uri/BaseURI.java 
b/src/java/org/apache/turbine/util/uri/BaseURI.java
index 8d2d426c..2e83ecd6 100644
--- a/src/java/org/apache/turbine/util/uri/BaseURI.java
+++ b/src/java/org/apache/turbine/util/uri/BaseURI.java
@@ -21,7 +21,7 @@ package org.apache.turbine.util.uri;
  */
 
 
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.LogManager;
diff --git a/src/java/org/apache/turbine/util/velocity/VelocityEmail.java 
b/src/java/org/apache/turbine/util/velocity/VelocityEmail.java
index da9680bb..1eb9a6dd 100644
--- a/src/java/org/apache/turbine/util/velocity/VelocityEmail.java
+++ b/src/java/org/apache/turbine/util/velocity/VelocityEmail.java
@@ -21,8 +21,8 @@ package org.apache.turbine.util.velocity;
  */
 
 import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.mail.EmailException;
-import org.apache.commons.mail.SimpleEmail;
+import org.apache.commons.mail2.core.EmailException;
+import org.apache.commons.mail2.jakarta.SimpleEmail;
 import org.apache.commons.text.WordUtils;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
diff --git 
a/src/java/org/apache/turbine/util/velocity/VelocityEmailException.java 
b/src/java/org/apache/turbine/util/velocity/VelocityEmailException.java
index ff05213a..841e78e9 100644
--- a/src/java/org/apache/turbine/util/velocity/VelocityEmailException.java
+++ b/src/java/org/apache/turbine/util/velocity/VelocityEmailException.java
@@ -25,7 +25,7 @@ import org.apache.turbine.util.TurbineException;
 
 /**
  * This exception is thrown if a VelocityEmail/VelocityHtmlEmail can not be
- * sent using JavaMail.  It will most likly wrap a 
javax.mail.MessagingException
+ * sent using JavaMail.  It will most likly wrap a 
jakarta.mail.MessagingException
  * exception.
  *
  * @author <a href="mailto:[email protected]";>Eric Pugh</a>
diff --git a/src/java/org/apache/turbine/util/velocity/VelocityHtmlEmail.java 
b/src/java/org/apache/turbine/util/velocity/VelocityHtmlEmail.java
index cda46af4..e032f628 100644
--- a/src/java/org/apache/turbine/util/velocity/VelocityHtmlEmail.java
+++ b/src/java/org/apache/turbine/util/velocity/VelocityHtmlEmail.java
@@ -27,8 +27,8 @@ import java.net.URL;
 import java.util.Hashtable;
 
 import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.mail.EmailException;
-import org.apache.commons.mail.HtmlEmail;
+import org.apache.commons.mail2.core.EmailException;
+import org.apache.commons.mail2.jakarta.HtmlEmail;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 import org.apache.turbine.Turbine;
diff --git a/src/test/org/apache/turbine/TurbineConfigTest.java 
b/src/test/org/apache/turbine/TurbineConfigTest.java
index 4ff066e6..8ca00b35 100644
--- a/src/test/org/apache/turbine/TurbineConfigTest.java
+++ b/src/test/org/apache/turbine/TurbineConfigTest.java
@@ -23,8 +23,8 @@ import static org.junit.Assert.assertEquals;
 
 import java.io.File;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletContext;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletContext;
 
 import org.apache.turbine.test.BaseTestCase;
 import org.apache.turbine.util.TurbineConfig;
diff --git a/src/test/org/apache/turbine/TurbineTest.java 
b/src/test/org/apache/turbine/TurbineTest.java
index 97e8ceb2..69b34b3e 100644
--- a/src/test/org/apache/turbine/TurbineTest.java
+++ b/src/test/org/apache/turbine/TurbineTest.java
@@ -22,8 +22,8 @@ package org.apache.turbine;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.test.BaseTestCase;
 import org.apache.turbine.util.TurbineConfig;
diff --git a/src/test/org/apache/turbine/modules/ActionLoaderTest.java 
b/src/test/org/apache/turbine/modules/ActionLoaderTest.java
index fc5a4be6..b540ac19 100644
--- a/src/test/org/apache/turbine/modules/ActionLoaderTest.java
+++ b/src/test/org/apache/turbine/modules/ActionLoaderTest.java
@@ -29,9 +29,9 @@ import static org.mockito.Mockito.when;
 import java.util.HashMap;
 import java.util.Map;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.Turbine;
 import org.apache.turbine.modules.actions.VelocityActionDoesNothing;
diff --git a/src/test/org/apache/turbine/modules/LayoutLoaderTest.java 
b/src/test/org/apache/turbine/modules/LayoutLoaderTest.java
index cda4cc32..e8d5d83d 100644
--- a/src/test/org/apache/turbine/modules/LayoutLoaderTest.java
+++ b/src/test/org/apache/turbine/modules/LayoutLoaderTest.java
@@ -23,9 +23,9 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 import static org.mockito.Mockito.mock;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.modules.layouts.TestVelocityOnlyLayout;
 import org.apache.turbine.pipeline.PipelineData;
diff --git 
a/src/test/org/apache/turbine/pipeline/DefaultACLCreationValveTest.java 
b/src/test/org/apache/turbine/pipeline/DefaultACLCreationValveTest.java
index 4d5cbff8..c9868c30 100644
--- a/src/test/org/apache/turbine/pipeline/DefaultACLCreationValveTest.java
+++ b/src/test/org/apache/turbine/pipeline/DefaultACLCreationValveTest.java
@@ -27,9 +27,9 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.mockito.Mockito.mock;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.security.model.turbine.entity.impl.TurbineUserImpl;
 import org.apache.turbine.om.security.DefaultUserImpl;
diff --git a/src/test/org/apache/turbine/pipeline/DefaultLoginValveTest.java 
b/src/test/org/apache/turbine/pipeline/DefaultLoginValveTest.java
index 514df4f6..384bca9c 100644
--- a/src/test/org/apache/turbine/pipeline/DefaultLoginValveTest.java
+++ b/src/test/org/apache/turbine/pipeline/DefaultLoginValveTest.java
@@ -30,10 +30,10 @@ import static org.mockito.Mockito.when;
 
 import java.util.Vector;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.turbine.TurbineConstants;
 import org.apache.turbine.modules.actions.LoginUser;
diff --git 
a/src/test/org/apache/turbine/pipeline/DefaultSessionTimeoutValveTest.java 
b/src/test/org/apache/turbine/pipeline/DefaultSessionTimeoutValveTest.java
index 214c9db6..ee5fda02 100644
--- a/src/test/org/apache/turbine/pipeline/DefaultSessionTimeoutValveTest.java
+++ b/src/test/org/apache/turbine/pipeline/DefaultSessionTimeoutValveTest.java
@@ -25,9 +25,9 @@ import static org.mockito.Mockito.when;
 
 import java.util.Vector;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.Turbine;
 import org.apache.turbine.TurbineConstants;
diff --git 
a/src/test/org/apache/turbine/pipeline/DefaultSessionValidationValveTest.java 
b/src/test/org/apache/turbine/pipeline/DefaultSessionValidationValveTest.java
index 0712e3ce..90938df7 100644
--- 
a/src/test/org/apache/turbine/pipeline/DefaultSessionValidationValveTest.java
+++ 
b/src/test/org/apache/turbine/pipeline/DefaultSessionValidationValveTest.java
@@ -31,9 +31,9 @@ import static org.mockito.Mockito.when;
 
 import java.util.Vector;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.security.model.turbine.entity.impl.TurbineUserImpl;
 import org.apache.turbine.TurbineConstants;
diff --git 
a/src/test/org/apache/turbine/pipeline/DefaultSetEncodingValveTest.java 
b/src/test/org/apache/turbine/pipeline/DefaultSetEncodingValveTest.java
index 125f7e10..fde2caaf 100644
--- a/src/test/org/apache/turbine/pipeline/DefaultSetEncodingValveTest.java
+++ b/src/test/org/apache/turbine/pipeline/DefaultSetEncodingValveTest.java
@@ -23,9 +23,9 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.Turbine;
 import org.apache.turbine.TurbineConstants;
diff --git a/src/test/org/apache/turbine/pipeline/DetermineActionValveTest.java 
b/src/test/org/apache/turbine/pipeline/DetermineActionValveTest.java
index fc38b85e..97a8fdba 100644
--- a/src/test/org/apache/turbine/pipeline/DetermineActionValveTest.java
+++ b/src/test/org/apache/turbine/pipeline/DetermineActionValveTest.java
@@ -27,9 +27,9 @@ import static org.mockito.Mockito.when;
 
 import java.util.Vector;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.test.BaseTestCase;
 import org.apache.turbine.util.RunData;
diff --git a/src/test/org/apache/turbine/pipeline/DetermineTargetValveTest.java 
b/src/test/org/apache/turbine/pipeline/DetermineTargetValveTest.java
index f1e34261..6146b074 100644
--- a/src/test/org/apache/turbine/pipeline/DetermineTargetValveTest.java
+++ b/src/test/org/apache/turbine/pipeline/DetermineTargetValveTest.java
@@ -27,9 +27,9 @@ import static org.mockito.Mockito.when;
 
 import java.util.Vector;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.turbine.test.BaseTestCase;
 import org.apache.turbine.util.RunData;
diff --git a/src/test/org/apache/turbine/pipeline/ExecutePageValveTest.java 
b/src/test/org/apache/turbine/pipeline/ExecutePageValveTest.java
index 426d72a6..e3a4a31b 100644
--- a/src/test/org/apache/turbine/pipeline/ExecutePageValveTest.java
+++ b/src/test/org/apache/turbine/pipeline/ExecutePageValveTest.java
@@ -28,10 +28,10 @@ import static org.mockito.Mockito.when;
 
 import java.util.Vector;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletOutputStream;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.security.model.turbine.entity.impl.TurbineUserImpl;
 import org.apache.turbine.modules.actions.VelocityActionDoesNothing;
diff --git a/src/test/org/apache/turbine/services/intake/IntakeToolTest.java 
b/src/test/org/apache/turbine/services/intake/IntakeToolTest.java
index cc445f26..5d21331d 100644
--- a/src/test/org/apache/turbine/services/intake/IntakeToolTest.java
+++ b/src/test/org/apache/turbine/services/intake/IntakeToolTest.java
@@ -26,9 +26,9 @@ import static org.mockito.Mockito.mock;
 
 import java.io.File;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.intake.IntakeService;
 import org.apache.fulcrum.intake.model.Group;
diff --git 
a/src/test/org/apache/turbine/services/localization/DateTimeFormatterServiceTest.java
 
b/src/test/org/apache/turbine/services/localization/DateTimeFormatterServiceTest.java
index 37105970..eff70333 100644
--- 
a/src/test/org/apache/turbine/services/localization/DateTimeFormatterServiceTest.java
+++ 
b/src/test/org/apache/turbine/services/localization/DateTimeFormatterServiceTest.java
@@ -38,9 +38,9 @@ import java.time.temporal.ChronoUnit;
 import java.time.temporal.TemporalAccessor;
 import java.util.stream.Stream;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.parser.DefaultParameterParser;
 import org.apache.turbine.annotation.AnnotationProcessor;
diff --git 
a/src/test/org/apache/turbine/services/localization/LocalizationToolTest.java 
b/src/test/org/apache/turbine/services/localization/LocalizationToolTest.java
index e555f5ae..02896356 100644
--- 
a/src/test/org/apache/turbine/services/localization/LocalizationToolTest.java
+++ 
b/src/test/org/apache/turbine/services/localization/LocalizationToolTest.java
@@ -24,9 +24,9 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
 import static org.mockito.Mockito.mock;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.pool.PoolService;
 import org.apache.turbine.annotation.AnnotationProcessor;
diff --git 
a/src/test/org/apache/turbine/services/localization/RundataLocalizationToolTest.java
 
b/src/test/org/apache/turbine/services/localization/RundataLocalizationToolTest.java
index 4ca27977..9482674c 100644
--- 
a/src/test/org/apache/turbine/services/localization/RundataLocalizationToolTest.java
+++ 
b/src/test/org/apache/turbine/services/localization/RundataLocalizationToolTest.java
@@ -26,9 +26,9 @@ import static org.mockito.Mockito.mock;
 
 import java.util.Locale;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.security.model.turbine.entity.TurbineUser;
 import org.apache.fulcrum.testcontainer.BaseUnit5Test;
diff --git 
a/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperJSONServiceTest.java
 
b/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperJSONServiceTest.java
index 9200e2df..532719c9 100644
--- 
a/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperJSONServiceTest.java
+++ 
b/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperJSONServiceTest.java
@@ -23,9 +23,9 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.mockito.Mockito.mock;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.parser.ParameterParser;
 import org.apache.logging.log4j.LogManager;
diff --git 
a/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperServiceTest.java
 
b/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperServiceTest.java
index 7aed2ab8..24d01add 100644
--- 
a/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperServiceTest.java
+++ 
b/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperServiceTest.java
@@ -33,8 +33,8 @@ import java.util.concurrent.atomic.AtomicLong;
 import java.util.function.IntConsumer;
 import java.util.stream.IntStream;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.parser.ParameterParser;
 import org.apache.turbine.Turbine;
diff --git 
a/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperYAMLServiceTest.java
 
b/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperYAMLServiceTest.java
index 07e61e85..85db3954 100644
--- 
a/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperYAMLServiceTest.java
+++ 
b/src/test/org/apache/turbine/services/urlmapper/TurbineURLMapperYAMLServiceTest.java
@@ -23,9 +23,9 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.mockito.Mockito.mock;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 import org.apache.fulcrum.parser.ParameterParser;
 import org.apache.logging.log4j.LogManager;
diff --git a/src/test/org/apache/turbine/test/BaseTestCase.java 
b/src/test/org/apache/turbine/test/BaseTestCase.java
index 3b2e83bb..30fa41e1 100644
--- a/src/test/org/apache/turbine/test/BaseTestCase.java
+++ b/src/test/org/apache/turbine/test/BaseTestCase.java
@@ -34,10 +34,10 @@ import java.util.Locale;
 import java.util.Map;
 import java.util.Vector;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
 
 import org.apache.turbine.pipeline.PipelineData;
 import org.apache.turbine.services.TurbineServices;
diff --git a/src/test/org/apache/turbine/util/uri/TurbineURITest.java 
b/src/test/org/apache/turbine/util/uri/TurbineURITest.java
index 23d7ac29..5b001c8c 100644
--- a/src/test/org/apache/turbine/util/uri/TurbineURITest.java
+++ b/src/test/org/apache/turbine/util/uri/TurbineURITest.java
@@ -23,7 +23,7 @@ import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
-import javax.servlet.http.Part;
+import jakarta.servlet.http.Part;
 
 import org.apache.fulcrum.parser.DefaultParameterParser;
 import org.apache.fulcrum.parser.ParameterParser;

Reply via email to