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

hansva pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hop.git


The following commit(s) were added to refs/heads/main by this push:
     new 557533df83 upgrade jetty to 12.1.2 (#5859)
557533df83 is described below

commit 557533df835561baf8badf5b1423db2526881b2a
Author: Alex Mueller <[email protected]>
AuthorDate: Wed Oct 22 15:33:41 2025 +0200

    upgrade jetty to 12.1.2 (#5859)
    
    fix static assets not showing in hop-server, because relative resource path 
cannot be resolved
    
    upgrade jetty to 11.0.26
    fix replace swt.artifactId in rcp/pom.xml
    
    upgrade jetty to 10.0.26
    fix jetty 10.0.6 returning "Invalid PathInContext" error by re-ordering 
handlers
    fix jetty 10.0.7 returning "Forbidden (HTTP 403)" status by setting auth 
method on SecurityHandler
---
 assemblies/web/pom.xml                             |  2 +-
 engine-beam/pom.xml                                |  5 ++
 engine/pom.xml                                     | 62 ++++++++++++++----
 .../java/org/apache/hop/pipeline/Pipeline.java     |  4 +-
 .../java/org/apache/hop/www/AddExportServlet.java  |  6 +-
 .../org/apache/hop/www/AddPipelineServlet.java     |  6 +-
 .../org/apache/hop/www/AddWorkflowServlet.java     |  6 +-
 .../org/apache/hop/www/BaseHopServerPlugin.java    |  4 +-
 .../java/org/apache/hop/www/BaseHttpServlet.java   |  8 +--
 .../java/org/apache/hop/www/BodyHttpServlet.java   |  4 +-
 .../apache/hop/www/DeleteExecutionInfoServlet.java |  6 +-
 .../apache/hop/www/GetExecutionInfoServlet.java    |  6 +-
 .../apache/hop/www/GetPipelineImageServlet.java    |  6 +-
 .../apache/hop/www/GetPipelineStatusServlet.java   |  6 +-
 .../java/org/apache/hop/www/GetRootServlet.java    |  6 +-
 .../java/org/apache/hop/www/GetStatusServlet.java  |  6 +-
 .../apache/hop/www/GetWorkflowImageServlet.java    |  6 +-
 .../apache/hop/www/GetWorkflowStatusServlet.java   |  6 +-
 .../main/java/org/apache/hop/www/HopServer.java    |  6 +-
 .../java/org/apache/hop/www/HopServerServlet.java  | 10 +--
 .../java/org/apache/hop/www/IHopServerPlugin.java  |  4 +-
 .../org/apache/hop/www/PausePipelineServlet.java   |  6 +-
 .../hop/www/PrepareExecutionPipelineServlet.java   |  6 +-
 .../hop/www/RegisterExecutionInfoServlet.java      |  6 +-
 .../org/apache/hop/www/RegisterPackageServlet.java |  4 +-
 .../apache/hop/www/RegisterPipelineServlet.java    |  4 +-
 .../apache/hop/www/RegisterWorkflowServlet.java    |  4 +-
 .../org/apache/hop/www/RemovePipelineServlet.java  |  6 +-
 .../org/apache/hop/www/RemoveWorkflowServlet.java  |  6 +-
 .../org/apache/hop/www/SniffTransformServlet.java  |  6 +-
 .../hop/www/StartExecutionPipelineServlet.java     |  6 +-
 .../org/apache/hop/www/StartPipelineServlet.java   |  6 +-
 .../org/apache/hop/www/StartWorkflowServlet.java   |  6 +-
 .../org/apache/hop/www/StopPipelineServlet.java    |  6 +-
 .../org/apache/hop/www/StopWorkflowServlet.java    |  6 +-
 .../main/java/org/apache/hop/www/WebServer.java    | 76 +++++++++++-----------
 .../java/org/apache/hop/www/WebServiceServlet.java |  6 +-
 .../apache/hop/www/jaxrs/HopServerResource.java    |  8 +--
 .../org/apache/hop/www/jaxrs/PipelineResource.java | 14 ++--
 .../org/apache/hop/www/jaxrs/WorkflowResource.java | 14 ++--
 .../apache/hop/www/BaseHopServerPluginTest.java    |  7 +-
 .../hop/www/GetPipelineStatusServletTest.java      |  6 +-
 .../org/apache/hop/www/GetRootServletTest.java     |  6 +-
 .../org/apache/hop/www/GetStatusServletTest.java   |  6 +-
 .../hop/www/GetWorkflowStatusServletTest.java      |  8 +--
 .../java/org/apache/hop/www/HopServerTest.java     |  8 +--
 .../apache/hop/www/PausePipelineServletTest.java   |  6 +-
 .../www/PrepareExecutionPipelineServletTest.java   |  6 +-
 .../apache/hop/www/RemovePipelineServletTest.java  |  6 +-
 .../apache/hop/www/RemoveWorkflowServletTest.java  |  6 +-
 .../apache/hop/www/SniffTransformServletTest.java  |  6 +-
 .../hop/www/StartExecutionPipelineServletTest.java |  6 +-
 .../apache/hop/www/StartPipelineServletTest.java   |  6 +-
 .../apache/hop/www/StartWorkflowServletTest.java   |  6 +-
 .../apache/hop/www/StopWorkflowServletTest.java    |  6 +-
 lib/pom.xml                                        | 18 ++---
 plugins/engines/beam/pom.xml                       | 32 ++++-----
 .../org/apache/hop/www/async/AsyncRunServlet.java  |  6 +-
 .../apache/hop/www/async/AsyncStatusServlet.java   |  6 +-
 .../apache/hop/metadata/rest/RestConnection.java   | 10 +--
 plugins/pom.xml                                    |  5 ++
 plugins/tech/google/pom.xml                        |  8 +--
 .../util/CustomLocalServerReceiver.java            | 53 ++++++++-------
 plugins/transforms/rest/pom.xml                    |  2 +-
 .../apache/hop/pipeline/transforms/rest/Rest.java  | 20 +++---
 .../hop/pipeline/transforms/rest/RestData.java     |  2 +-
 .../pipeline/transforms/rest/RestCallRestTest.java | 20 +++---
 .../transforms/rest/RestInitAndProcessTest.java    |  2 +-
 .../transforms/rest/RestProcessRowTest.java        |  2 +-
 .../hop/pipeline/transforms/rest/RestTest.java     |  8 +--
 .../salesforce/SalesforceConnection.java           |  2 +-
 rap/pom.xml                                        |  2 +-
 .../ui/hopgui/HopWebServletContextListener.java    |  2 +-
 rcp/pom.xml                                        |  2 +-
 rest/pom.xml                                       | 10 +--
 75 files changed, 361 insertions(+), 317 deletions(-)

diff --git a/assemblies/web/pom.xml b/assemblies/web/pom.xml
index 3cee2607cf..4977dda2b2 100644
--- a/assemblies/web/pom.xml
+++ b/assemblies/web/pom.xml
@@ -29,7 +29,7 @@
     <name>Hop Assemblies Web</name>
 
     <properties>
-        <rap.version>3.21.0</rap.version>
+        <rap.version>4.4.0</rap.version>
     </properties>
 
     <dependencies>
diff --git a/engine-beam/pom.xml b/engine-beam/pom.xml
index 6a4cfa647b..c9af0d9dc9 100644
--- a/engine-beam/pom.xml
+++ b/engine-beam/pom.xml
@@ -48,6 +48,11 @@
     </dependencyManagement>
 
     <dependencies>
+        <dependency>
+            <groupId>jakarta.servlet</groupId>
+            <artifactId>jakarta.servlet-api</artifactId>
+            <version>6.1.0</version>
+        </dependency>
         <dependency>
             <groupId>org.apache.beam</groupId>
             <artifactId>beam-sdks-java-core</artifactId>
diff --git a/engine/pom.xml b/engine/pom.xml
index 923da4f50b..49487047c5 100644
--- a/engine/pom.xml
+++ b/engine/pom.xml
@@ -30,8 +30,12 @@
 
     <properties>
         <commons-validator.version>1.9.0</commons-validator.version>
-        <jakarta.xml.bind-api.version>4.0.2</jakarta.xml.bind-api.version>
-        <jersey2.version>2.43</jersey2.version>
+        <jakarta.annotation-api.version>3.0.0</jakarta.annotation-api.version>
+        <jakarta.servlet-api.version>6.1.0</jakarta.servlet-api.version>
+        <jakarta.xml.bind-api.version>4.0.4</jakarta.xml.bind-api.version>
+        <jakarta.xml.soap-api.version>3.0.2</jakarta.xml.soap-api.version>
+        <jakarta.xml.ws-api.version>4.0.2</jakarta.xml.ws-api.version>
+        <jersey2.version>3.1.11</jersey2.version>
         <snappy-java.version>1.1.10.7</snappy-java.version>
     </properties>
 
@@ -65,6 +69,16 @@
             <groupId>info.picocli</groupId>
             <artifactId>picocli-codegen</artifactId>
         </dependency>
+        <dependency>
+            <groupId>jakarta.annotation</groupId>
+            <artifactId>jakarta.annotation-api</artifactId>
+            <version>${jakarta.annotation-api.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>jakarta.servlet</groupId>
+            <artifactId>jakarta.servlet-api</artifactId>
+            <version>${jakarta.servlet-api.version}</version>
+        </dependency>
         <dependency>
             <groupId>jakarta.xml.bind</groupId>
             <artifactId>jakarta.xml.bind-api</artifactId>
@@ -76,6 +90,28 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>jakarta.xml.soap</groupId>
+            <artifactId>jakarta.xml.soap-api</artifactId>
+            <version>${jakarta.xml.soap-api.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>jakarta.xml.ws</groupId>
+            <artifactId>jakarta.xml.ws-api</artifactId>
+            <version>${jakarta.xml.ws-api.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
         <dependency>
             <groupId>org.eclipse.jetty</groupId>
             <artifactId>jetty-jaas</artifactId>
@@ -90,23 +126,23 @@
         </dependency>
         <dependency>
             <groupId>org.eclipse.jetty</groupId>
-            <artifactId>jetty-servlet</artifactId>
+            <artifactId>jetty-util</artifactId>
         </dependency>
         <dependency>
             <groupId>org.eclipse.jetty</groupId>
-            <artifactId>jetty-servlets</artifactId>
+            <artifactId>jetty-xml</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.eclipse.jetty</groupId>
-            <artifactId>jetty-util</artifactId>
+            <groupId>org.eclipse.jetty.ee11</groupId>
+            <artifactId>jetty-ee11-servlet</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.eclipse.jetty</groupId>
-            <artifactId>jetty-webapp</artifactId>
+            <groupId>org.eclipse.jetty.ee11</groupId>
+            <artifactId>jetty-ee11-servlets</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.eclipse.jetty</groupId>
-            <artifactId>jetty-xml</artifactId>
+            <groupId>org.eclipse.jetty.ee11</groupId>
+            <artifactId>jetty-ee11-webapp</artifactId>
         </dependency>
         <dependency>
             <groupId>org.glassfish.jersey.connectors</groupId>
@@ -146,12 +182,12 @@
         <dependency>
             <groupId>org.glassfish.metro</groupId>
             <artifactId>webservices-api</artifactId>
-            <version>2.3.1</version>
+            <version>4.0.4</version>
             <scope>compile</scope>
             <exclusions>
                 <exclusion>
-                    <groupId>javax.annotation</groupId>
-                    <artifactId>javax.annotation-api</artifactId>
+                    <groupId>jakarta.annotation</groupId>
+                    <artifactId>jakarta.annotation-api</artifactId>
                 </exclusion>
             </exclusions>
         </dependency>
diff --git a/engine/src/main/java/org/apache/hop/pipeline/Pipeline.java 
b/engine/src/main/java/org/apache/hop/pipeline/Pipeline.java
index 4832b76ffc..6cedad0bfd 100644
--- a/engine/src/main/java/org/apache/hop/pipeline/Pipeline.java
+++ b/engine/src/main/java/org/apache/hop/pipeline/Pipeline.java
@@ -26,6 +26,8 @@ import static 
org.apache.hop.pipeline.Pipeline.BitMaskStatus.PREPARING;
 import static org.apache.hop.pipeline.Pipeline.BitMaskStatus.RUNNING;
 import static org.apache.hop.pipeline.Pipeline.BitMaskStatus.STOPPED;
 
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Date;
@@ -40,8 +42,6 @@ import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.atomic.AtomicInteger;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.vfs2.FileName;
 import org.apache.commons.vfs2.FileObject;
diff --git a/engine/src/main/java/org/apache/hop/www/AddExportServlet.java 
b/engine/src/main/java/org/apache/hop/www/AddExportServlet.java
index 5c951ba386..5271eb726a 100644
--- a/engine/src/main/java/org/apache/hop/www/AddExportServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/AddExportServlet.java
@@ -17,14 +17,14 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.io.PrintWriter;
 import java.util.UUID;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.commons.vfs2.FileObject;
 import org.apache.hop.core.Const;
diff --git a/engine/src/main/java/org/apache/hop/www/AddPipelineServlet.java 
b/engine/src/main/java/org/apache/hop/www/AddPipelineServlet.java
index 41e74bc00e..bf8c02f039 100644
--- a/engine/src/main/java/org/apache/hop/www/AddPipelineServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/AddPipelineServlet.java
@@ -17,13 +17,13 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.UUID;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.exception.HopException;
diff --git a/engine/src/main/java/org/apache/hop/www/AddWorkflowServlet.java 
b/engine/src/main/java/org/apache/hop/www/AddWorkflowServlet.java
index ffa614a187..63a553517d 100644
--- a/engine/src/main/java/org/apache/hop/www/AddWorkflowServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/AddWorkflowServlet.java
@@ -17,15 +17,15 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.Arrays;
 import java.util.Map;
 import java.util.UUID;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.logging.LoggingObjectType;
diff --git a/engine/src/main/java/org/apache/hop/www/BaseHopServerPlugin.java 
b/engine/src/main/java/org/apache/hop/www/BaseHopServerPlugin.java
index ac32f2ec97..1dacab357b 100644
--- a/engine/src/main/java/org/apache/hop/www/BaseHopServerPlugin.java
+++ b/engine/src/main/java/org/apache/hop/www/BaseHopServerPlugin.java
@@ -19,14 +19,14 @@ package org.apache.hop.www;
 
 import com.google.common.collect.FluentIterable;
 import com.google.common.collect.ImmutableMultimap;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Enumeration;
 import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.annotations.HopServerServlet;
 
 public abstract class BaseHopServerPlugin extends BaseHttpServlet
diff --git a/engine/src/main/java/org/apache/hop/www/BaseHttpServlet.java 
b/engine/src/main/java/org/apache/hop/www/BaseHttpServlet.java
index c239738466..36b96c4fa2 100644
--- a/engine/src/main/java/org/apache/hop/www/BaseHttpServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/BaseHttpServlet.java
@@ -17,11 +17,11 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.logging.ILogChannel;
 import org.apache.hop.core.logging.LogChannel;
diff --git a/engine/src/main/java/org/apache/hop/www/BodyHttpServlet.java 
b/engine/src/main/java/org/apache/hop/www/BodyHttpServlet.java
index 3a23c7bbaa..3f15824cf8 100644
--- a/engine/src/main/java/org/apache/hop/www/BodyHttpServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/BodyHttpServlet.java
@@ -16,10 +16,10 @@
  */
 package org.apache.hop.www;
 
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang.exception.ExceptionUtils;
 import org.apache.hop.core.Const;
diff --git 
a/engine/src/main/java/org/apache/hop/www/DeleteExecutionInfoServlet.java 
b/engine/src/main/java/org/apache/hop/www/DeleteExecutionInfoServlet.java
index e66af19ab9..a92e143415 100644
--- a/engine/src/main/java/org/apache/hop/www/DeleteExecutionInfoServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/DeleteExecutionInfoServlet.java
@@ -17,12 +17,12 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.PrintWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
diff --git 
a/engine/src/main/java/org/apache/hop/www/GetExecutionInfoServlet.java 
b/engine/src/main/java/org/apache/hop/www/GetExecutionInfoServlet.java
index e4a06586a7..4d3834b2da 100644
--- a/engine/src/main/java/org/apache/hop/www/GetExecutionInfoServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/GetExecutionInfoServlet.java
@@ -17,13 +17,13 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import jakarta.xml.bind.DataBindingException;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.List;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
diff --git 
a/engine/src/main/java/org/apache/hop/www/GetPipelineImageServlet.java 
b/engine/src/main/java/org/apache/hop/www/GetPipelineImageServlet.java
index 8421d90572..3a1fb7ef07 100644
--- a/engine/src/main/java/org/apache/hop/www/GetPipelineImageServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/GetPipelineImageServlet.java
@@ -19,12 +19,12 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.util.Utils;
 import org.apache.hop.i18n.BaseMessages;
diff --git 
a/engine/src/main/java/org/apache/hop/www/GetPipelineStatusServlet.java 
b/engine/src/main/java/org/apache/hop/www/GetPipelineStatusServlet.java
index 50e444b962..b0235d535b 100644
--- a/engine/src/main/java/org/apache/hop/www/GetPipelineStatusServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/GetPipelineStatusServlet.java
@@ -20,15 +20,15 @@ package org.apache.hop.www;
 import static java.nio.charset.StandardCharsets.UTF_8;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
 import java.nio.charset.StandardCharsets;
 import java.util.Date;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.exception.HopException;
diff --git a/engine/src/main/java/org/apache/hop/www/GetRootServlet.java 
b/engine/src/main/java/org/apache/hop/www/GetRootServlet.java
index d08b06da6b..d97a403574 100644
--- a/engine/src/main/java/org/apache/hop/www/GetRootServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/GetRootServlet.java
@@ -17,11 +17,11 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.i18n.BaseMessages;
 
 public class GetRootServlet extends BaseHttpServlet implements 
IHopServerPlugin {
diff --git a/engine/src/main/java/org/apache/hop/www/GetStatusServlet.java 
b/engine/src/main/java/org/apache/hop/www/GetStatusServlet.java
index ae5497e5b5..7376d1fb6e 100644
--- a/engine/src/main/java/org/apache/hop/www/GetStatusServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/GetStatusServlet.java
@@ -18,6 +18,9 @@
 package org.apache.hop.www;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.lang.management.OperatingSystemMXBean;
@@ -27,9 +30,6 @@ import java.util.Collections;
 import java.util.Comparator;
 import java.util.Date;
 import java.util.List;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.exception.HopException;
diff --git 
a/engine/src/main/java/org/apache/hop/www/GetWorkflowImageServlet.java 
b/engine/src/main/java/org/apache/hop/www/GetWorkflowImageServlet.java
index cc4b39daec..ace0271379 100644
--- a/engine/src/main/java/org/apache/hop/www/GetWorkflowImageServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/GetWorkflowImageServlet.java
@@ -17,13 +17,13 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.nio.charset.StandardCharsets;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.util.Utils;
 import org.apache.hop.i18n.BaseMessages;
diff --git 
a/engine/src/main/java/org/apache/hop/www/GetWorkflowStatusServlet.java 
b/engine/src/main/java/org/apache/hop/www/GetWorkflowStatusServlet.java
index d16d5588f7..2c427a00bd 100644
--- a/engine/src/main/java/org/apache/hop/www/GetWorkflowStatusServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/GetWorkflowStatusServlet.java
@@ -20,14 +20,14 @@ package org.apache.hop.www;
 import static java.nio.charset.StandardCharsets.UTF_8;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
 import java.nio.charset.StandardCharsets;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.exception.HopException;
diff --git a/engine/src/main/java/org/apache/hop/www/HopServer.java 
b/engine/src/main/java/org/apache/hop/www/HopServer.java
index 7fb4961722..e9c7bac30c 100644
--- a/engine/src/main/java/org/apache/hop/www/HopServer.java
+++ b/engine/src/main/java/org/apache/hop/www/HopServer.java
@@ -18,6 +18,9 @@
 package org.apache.hop.www;
 
 import com.google.common.annotations.VisibleForTesting;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.WebTarget;
 import java.io.OutputStream;
 import java.net.InetAddress;
 import java.net.Socket;
@@ -25,9 +28,6 @@ import java.util.Date;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Stream;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.WebTarget;
 import lombok.Getter;
 import lombok.Setter;
 import org.apache.commons.collections4.CollectionUtils;
diff --git a/engine/src/main/java/org/apache/hop/www/HopServerServlet.java 
b/engine/src/main/java/org/apache/hop/www/HopServerServlet.java
index 52a7e9489e..6999f46b19 100644
--- a/engine/src/main/java/org/apache/hop/www/HopServerServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/HopServerServlet.java
@@ -17,17 +17,17 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletConfig;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.text.MessageFormat;
 import java.util.Enumeration;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.exception.HopPluginException;
 import org.apache.hop.core.logging.ILogChannel;
 import org.apache.hop.core.logging.LogChannel;
diff --git a/engine/src/main/java/org/apache/hop/www/IHopServerPlugin.java 
b/engine/src/main/java/org/apache/hop/www/IHopServerPlugin.java
index edf0d2b276..cf10e51301 100644
--- a/engine/src/main/java/org/apache/hop/www/IHopServerPlugin.java
+++ b/engine/src/main/java/org/apache/hop/www/IHopServerPlugin.java
@@ -17,8 +17,8 @@
 
 package org.apache.hop.www;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 public interface IHopServerPlugin extends IHopServerServlet {
 
diff --git a/engine/src/main/java/org/apache/hop/www/PausePipelineServlet.java 
b/engine/src/main/java/org/apache/hop/www/PausePipelineServlet.java
index f4efe62a51..fa0f443ad8 100644
--- a/engine/src/main/java/org/apache/hop/www/PausePipelineServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/PausePipelineServlet.java
@@ -19,12 +19,12 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.util.Utils;
diff --git 
a/engine/src/main/java/org/apache/hop/www/PrepareExecutionPipelineServlet.java 
b/engine/src/main/java/org/apache/hop/www/PrepareExecutionPipelineServlet.java
index e7daf21e58..42b79bc722 100644
--- 
a/engine/src/main/java/org/apache/hop/www/PrepareExecutionPipelineServlet.java
+++ 
b/engine/src/main/java/org/apache/hop/www/PrepareExecutionPipelineServlet.java
@@ -19,12 +19,12 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.logging.HopLogStore;
diff --git 
a/engine/src/main/java/org/apache/hop/www/RegisterExecutionInfoServlet.java 
b/engine/src/main/java/org/apache/hop/www/RegisterExecutionInfoServlet.java
index b6f492eb9c..80945eb85c 100644
--- a/engine/src/main/java/org/apache/hop/www/RegisterExecutionInfoServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/RegisterExecutionInfoServlet.java
@@ -17,12 +17,12 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.PrintWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
diff --git 
a/engine/src/main/java/org/apache/hop/www/RegisterPackageServlet.java 
b/engine/src/main/java/org/apache/hop/www/RegisterPackageServlet.java
index 3b460343fe..fb7b03b172 100644
--- a/engine/src/main/java/org/apache/hop/www/RegisterPackageServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/RegisterPackageServlet.java
@@ -16,13 +16,13 @@
  */
 package org.apache.hop.www;
 
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.nio.charset.StandardCharsets;
 import java.text.MessageFormat;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.vfs2.FileObject;
 import org.apache.hop.core.annotations.HopServerServlet;
diff --git 
a/engine/src/main/java/org/apache/hop/www/RegisterPipelineServlet.java 
b/engine/src/main/java/org/apache/hop/www/RegisterPipelineServlet.java
index c8abc3d91d..ac955ae10c 100644
--- a/engine/src/main/java/org/apache/hop/www/RegisterPipelineServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/RegisterPipelineServlet.java
@@ -16,10 +16,10 @@
  */
 package org.apache.hop.www;
 
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.nio.charset.StandardCharsets;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.io.IOUtils;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.exception.HopException;
diff --git 
a/engine/src/main/java/org/apache/hop/www/RegisterWorkflowServlet.java 
b/engine/src/main/java/org/apache/hop/www/RegisterWorkflowServlet.java
index 6b720d65a7..4e0b03d8e1 100644
--- a/engine/src/main/java/org/apache/hop/www/RegisterWorkflowServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/RegisterWorkflowServlet.java
@@ -16,10 +16,10 @@
  */
 package org.apache.hop.www;
 
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.nio.charset.StandardCharsets;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.io.IOUtils;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.exception.HopException;
diff --git a/engine/src/main/java/org/apache/hop/www/RemovePipelineServlet.java 
b/engine/src/main/java/org/apache/hop/www/RemovePipelineServlet.java
index 41e6cc1356..c2b21b8950 100644
--- a/engine/src/main/java/org/apache/hop/www/RemovePipelineServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/RemovePipelineServlet.java
@@ -17,11 +17,11 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.logging.HopLogStore;
diff --git a/engine/src/main/java/org/apache/hop/www/RemoveWorkflowServlet.java 
b/engine/src/main/java/org/apache/hop/www/RemoveWorkflowServlet.java
index d8057cbdd2..c7e70abb8a 100644
--- a/engine/src/main/java/org/apache/hop/www/RemoveWorkflowServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/RemoveWorkflowServlet.java
@@ -17,11 +17,11 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.logging.HopLogStore;
diff --git a/engine/src/main/java/org/apache/hop/www/SniffTransformServlet.java 
b/engine/src/main/java/org/apache/hop/www/SniffTransformServlet.java
index e60446287c..7cd102f9a2 100644
--- a/engine/src/main/java/org/apache/hop/www/SniffTransformServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/SniffTransformServlet.java
@@ -19,13 +19,13 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
 import java.util.List;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.exception.HopTransformException;
diff --git 
a/engine/src/main/java/org/apache/hop/www/StartExecutionPipelineServlet.java 
b/engine/src/main/java/org/apache/hop/www/StartExecutionPipelineServlet.java
index b8cd054439..b70dea4181 100644
--- a/engine/src/main/java/org/apache/hop/www/StartExecutionPipelineServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/StartExecutionPipelineServlet.java
@@ -19,12 +19,12 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
diff --git a/engine/src/main/java/org/apache/hop/www/StartPipelineServlet.java 
b/engine/src/main/java/org/apache/hop/www/StartPipelineServlet.java
index a529ec87f3..504004eecb 100644
--- a/engine/src/main/java/org/apache/hop/www/StartPipelineServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/StartPipelineServlet.java
@@ -19,13 +19,13 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
 import java.util.UUID;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
diff --git a/engine/src/main/java/org/apache/hop/www/StartWorkflowServlet.java 
b/engine/src/main/java/org/apache/hop/www/StartWorkflowServlet.java
index 07a0597a90..136dc837f1 100644
--- a/engine/src/main/java/org/apache/hop/www/StartWorkflowServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/StartWorkflowServlet.java
@@ -19,13 +19,13 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
 import java.util.UUID;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
diff --git a/engine/src/main/java/org/apache/hop/www/StopPipelineServlet.java 
b/engine/src/main/java/org/apache/hop/www/StopPipelineServlet.java
index 84a0ea69fa..00c65df24c 100644
--- a/engine/src/main/java/org/apache/hop/www/StopPipelineServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/StopPipelineServlet.java
@@ -19,12 +19,12 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.util.Utils;
diff --git a/engine/src/main/java/org/apache/hop/www/StopWorkflowServlet.java 
b/engine/src/main/java/org/apache/hop/www/StopWorkflowServlet.java
index a1a3db76ae..f9a588b136 100644
--- a/engine/src/main/java/org/apache/hop/www/StopWorkflowServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/StopWorkflowServlet.java
@@ -19,12 +19,12 @@ package org.apache.hop.www;
 
 import static java.nio.charset.StandardCharsets.UTF_8;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.net.URLEncoder;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
 import org.apache.hop.core.util.Utils;
diff --git a/engine/src/main/java/org/apache/hop/www/WebServer.java 
b/engine/src/main/java/org/apache/hop/www/WebServer.java
index 579700cba2..485faa80a5 100644
--- a/engine/src/main/java/org/apache/hop/www/WebServer.java
+++ b/engine/src/main/java/org/apache/hop/www/WebServer.java
@@ -17,16 +17,14 @@
 
 package org.apache.hop.www;
 
+import jakarta.servlet.Servlet;
 import java.awt.GraphicsEnvironment;
 import java.io.BufferedReader;
-import java.io.File;
 import java.io.InputStreamReader;
 import java.net.InetAddress;
 import java.net.ServerSocket;
 import java.net.Socket;
-import java.util.ArrayList;
 import java.util.List;
-import javax.servlet.Servlet;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.HopEnvironment;
 import org.apache.hop.core.encryption.Encr;
@@ -42,31 +40,32 @@ import org.apache.hop.core.variables.IVariables;
 import org.apache.hop.core.variables.Variables;
 import org.apache.hop.i18n.BaseMessages;
 import org.apache.hop.server.HopServerMeta;
+import org.eclipse.jetty.ee11.servlet.DefaultServlet;
+import org.eclipse.jetty.ee11.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee11.servlet.ServletHolder;
+import org.eclipse.jetty.ee11.servlet.security.ConstraintMapping;
+import org.eclipse.jetty.ee11.servlet.security.ConstraintSecurityHandler;
 import org.eclipse.jetty.http.HttpVersion;
 import org.eclipse.jetty.jaas.JAASLoginService;
-import org.eclipse.jetty.security.ConstraintMapping;
-import org.eclipse.jetty.security.ConstraintSecurityHandler;
+import org.eclipse.jetty.security.Authenticator;
+import org.eclipse.jetty.security.Constraint;
 import org.eclipse.jetty.security.HashLoginService;
 import org.eclipse.jetty.security.PropertyUserStore;
 import org.eclipse.jetty.security.UserStore;
-import org.eclipse.jetty.server.ConnectionLimit;
 import org.eclipse.jetty.server.Connector;
 import org.eclipse.jetty.server.Handler;
 import org.eclipse.jetty.server.HttpConfiguration;
 import org.eclipse.jetty.server.HttpConnectionFactory;
 import org.eclipse.jetty.server.LowResourceMonitor;
+import org.eclipse.jetty.server.NetworkConnectionLimit;
 import org.eclipse.jetty.server.SecureRequestCustomizer;
 import org.eclipse.jetty.server.Server;
 import org.eclipse.jetty.server.ServerConnector;
 import org.eclipse.jetty.server.SslConnectionFactory;
 import org.eclipse.jetty.server.handler.ContextHandlerCollection;
-import org.eclipse.jetty.server.handler.HandlerList;
 import org.eclipse.jetty.server.handler.ResourceHandler;
-import org.eclipse.jetty.servlet.DefaultServlet;
-import org.eclipse.jetty.servlet.ServletContextHandler;
-import org.eclipse.jetty.servlet.ServletHolder;
-import org.eclipse.jetty.util.resource.PathResource;
-import org.eclipse.jetty.util.security.Constraint;
+import org.eclipse.jetty.util.resource.Resource;
+import org.eclipse.jetty.util.resource.ResourceFactory;
 import org.eclipse.jetty.util.security.Password;
 import org.eclipse.jetty.util.ssl.SslContextFactory;
 import org.glassfish.jersey.servlet.ServletContainer;
@@ -189,20 +188,25 @@ public class WebServer {
   public void startServer() throws Exception {
     server = new Server();
 
-    List<String> roles = new ArrayList<>();
-    roles.add(Constraint.ANY_ROLE);
+    Constraint.Builder constraintBuilder =
+        new Constraint.Builder()
+            .name(Authenticator.BASIC_AUTH)
+            .authorization(Constraint.Authorization.SPECIFIC_ROLE)
+            .transport(Constraint.Transport.ANY);
 
     // Set up the security handler, optionally with JAAS
     //
     ConstraintSecurityHandler securityHandler = new 
ConstraintSecurityHandler();
+    securityHandler.setAuthenticationType(Authenticator.BASIC_AUTH);
 
     if (System.getProperty("loginmodulename") != null
         && System.getProperty("java.security.auth.login.config") != null) {
+      constraintBuilder.roles("*");
       JAASLoginService jaasLoginService = new JAASLoginService("Hop");
       
jaasLoginService.setLoginModuleName(System.getProperty("loginmodulename"));
       securityHandler.setLoginService(jaasLoginService);
     } else {
-      roles.add("default");
+      constraintBuilder.roles("default");
       HashLoginService hashLoginService;
       HopServerMeta hopServer = 
pipelineMap.getHopServerConfig().getHopServer();
       if (!Utils.isEmpty(hopServer.getPassword())) {
@@ -220,20 +224,15 @@ public class WebServer {
         }
         hashLoginService = new HashLoginService("Hop");
         PropertyUserStore userStore = new PropertyUserStore();
-        userStore.setConfig(passwordFile);
+        
userStore.setConfig(ResourceFactory.of(server).newResource(passwordFile));
         hashLoginService.setUserStore(userStore);
       }
       securityHandler.setLoginService(hashLoginService);
     }
 
-    Constraint constraint = new Constraint();
-    constraint.setName(Constraint.__BASIC_AUTH);
-    constraint.setRoles(roles.toArray(new String[roles.size()]));
-    constraint.setAuthenticate(true);
-
     ConstraintMapping constraintMapping = new ConstraintMapping();
-    constraintMapping.setConstraint(constraint);
     constraintMapping.setPathSpec("/*");
+    constraintMapping.setConstraint(constraintBuilder.build());
 
     securityHandler.setConstraintMappings(new ConstraintMapping[] 
{constraintMapping});
 
@@ -244,11 +243,10 @@ public class WebServer {
     // Root
     //
     ServletContextHandler root =
-        new ServletContextHandler(
-            contexts, GetRootServlet.CONTEXT_PATH, 
ServletContextHandler.SESSIONS);
+        new ServletContextHandler(GetRootServlet.CONTEXT_PATH, 
ServletContextHandler.SESSIONS);
+    contexts.addHandler(root);
     GetRootServlet rootServlet = new GetRootServlet();
     rootServlet.setJettyMode(true);
-    root.addServlet(new ServletHolder(rootServlet), "/*");
 
     boolean graphicsEnvironment = supportGraphicEnvironment();
     PluginRegistry pluginRegistry = PluginRegistry.getInstance();
@@ -260,8 +258,8 @@ public class WebServer {
       servlet.setJettyMode(true);
 
       ServletContextHandler servletContext =
-          new ServletContextHandler(
-              contexts, getContextPath(servlet), 
ServletContextHandler.SESSIONS);
+          new ServletContextHandler(getContextPath(servlet), 
ServletContextHandler.SESSIONS);
+      contexts.addHandler(servletContext);
       ServletHolder servletHolder = new ServletHolder((Servlet) servlet);
       servletContext.addServlet(servletHolder, "/*");
       servletContext.setAttribute("GraphicsEnvironment", graphicsEnvironment);
@@ -279,21 +277,21 @@ public class WebServer {
     // Allow png files to be shown for pipelines and workflows...
     //
     ResourceHandler resourceHandler = new ResourceHandler();
-    resourceHandler.setResourceBase("temp");
+    resourceHandler.setBaseResourceAsString("temp");
     // add all handlers/contexts to server
 
     // set up static servlet
     ServletHolder staticHolder = new ServletHolder("static", 
DefaultServlet.class);
-    // resourceBase maps to the path relative to where carte is started
-    staticHolder.setInitParameter("resourceBase", "./static/");
-    staticHolder.setInitParameter("dirAllowed", "true");
-    staticHolder.setInitParameter("pathInfoOnly", "true");
+    // baseResource maps to the path relative to where hop-server is started
+    Resource staticResource = 
ResourceFactory.of(server).newResource("static/");
+    root.setInitParameter(DefaultServlet.CONTEXT_INIT + "baseResource", 
staticResource.toString());
+    root.setInitParameter(DefaultServlet.CONTEXT_INIT + "dirAllowed", "true");
+    root.setInitParameter(DefaultServlet.CONTEXT_INIT + "pathInfoOnly", 
"true");
     root.addServlet(staticHolder, "/static/*");
 
-    HandlerList handlers = new HandlerList();
-    handlers.setHandlers(new Handler[] {resourceHandler, contexts});
-    securityHandler.setHandler(handlers);
+    root.addServlet(new ServletHolder(rootServlet), "/*");
 
+    securityHandler.setHandler(new Handler.Sequence(resourceHandler, 
contexts));
     server.setHandler(securityHandler);
 
     // Start execution
@@ -365,12 +363,12 @@ public class WebServer {
           
Encr.decryptPasswordOptionallyEncrypted(sslConfig.getKeyStorePassword());
       String keyPassword = 
Encr.decryptPasswordOptionallyEncrypted(sslConfig.getKeyPassword());
 
-      SslContextFactory.Client factory = new SslContextFactory.Client();
-      factory.setKeyStoreResource(new PathResource(new 
File(sslConfig.getKeyStore())));
+      SslContextFactory.Server factory = new SslContextFactory.Server();
+      factory.setKeyStorePath(sslConfig.getKeyStore());
       factory.setKeyStorePassword(keyStorePassword);
       factory.setKeyManagerPassword(keyPassword);
       factory.setKeyStoreType(sslConfig.getKeyStoreType());
-      factory.setTrustStoreResource(new PathResource(new 
File(sslConfig.getKeyStore())));
+      factory.setTrustStorePath(sslConfig.getKeyStore());
       factory.setTrustStorePassword(keyStorePassword);
 
       HttpConfiguration httpsConfig = new HttpConfiguration(httpConfig);
@@ -398,7 +396,7 @@ public class WebServer {
     LowResourceMonitor lowResourceMonitor = new LowResourceMonitor(server);
     if (validProperty(Const.HOP_SERVER_JETTY_ACCEPTORS)) {
       server.addBean(
-          new ConnectionLimit(
+          new NetworkConnectionLimit(
               
Integer.parseInt(System.getProperty(Const.HOP_SERVER_JETTY_ACCEPTORS))));
       log.logBasic(
           BaseMessages.getString(
diff --git a/engine/src/main/java/org/apache/hop/www/WebServiceServlet.java 
b/engine/src/main/java/org/apache/hop/www/WebServiceServlet.java
index 3dcc515477..9bc2b58863 100644
--- a/engine/src/main/java/org/apache/hop/www/WebServiceServlet.java
+++ b/engine/src/main/java/org/apache/hop/www/WebServiceServlet.java
@@ -19,15 +19,15 @@ package org.apache.hop.www;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.nio.charset.StandardCharsets;
 import java.util.Enumeration;
 import java.util.UUID;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
diff --git 
a/engine/src/main/java/org/apache/hop/www/jaxrs/HopServerResource.java 
b/engine/src/main/java/org/apache/hop/www/jaxrs/HopServerResource.java
index 5f4e72b6c7..3244dfab46 100644
--- a/engine/src/main/java/org/apache/hop/www/jaxrs/HopServerResource.java
+++ b/engine/src/main/java/org/apache/hop/www/jaxrs/HopServerResource.java
@@ -17,12 +17,12 @@
 
 package org.apache.hop.www.jaxrs;
 
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.MediaType;
 import java.util.ArrayList;
 import java.util.List;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
 import org.apache.hop.pipeline.PipelineMeta;
 import org.apache.hop.pipeline.engine.IPipelineEngine;
 import org.apache.hop.workflow.WorkflowMeta;
diff --git 
a/engine/src/main/java/org/apache/hop/www/jaxrs/PipelineResource.java 
b/engine/src/main/java/org/apache/hop/www/jaxrs/PipelineResource.java
index 830caf0cad..d5a1d0f1ec 100644
--- a/engine/src/main/java/org/apache/hop/www/jaxrs/PipelineResource.java
+++ b/engine/src/main/java/org/apache/hop/www/jaxrs/PipelineResource.java
@@ -17,14 +17,14 @@
 
 package org.apache.hop.www.jaxrs;
 
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.PUT;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
 import java.util.UUID;
-import javax.ws.rs.GET;
-import javax.ws.rs.PUT;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
 import org.apache.hop.core.exception.HopException;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/main/java/org/apache/hop/www/jaxrs/WorkflowResource.java 
b/engine/src/main/java/org/apache/hop/www/jaxrs/WorkflowResource.java
index 5d18157ef0..82c61ec958 100644
--- a/engine/src/main/java/org/apache/hop/www/jaxrs/WorkflowResource.java
+++ b/engine/src/main/java/org/apache/hop/www/jaxrs/WorkflowResource.java
@@ -17,14 +17,14 @@
 
 package org.apache.hop.www.jaxrs;
 
+import jakarta.ws.rs.GET;
+import jakarta.ws.rs.PUT;
+import jakarta.ws.rs.Path;
+import jakarta.ws.rs.PathParam;
+import jakarta.ws.rs.Produces;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
 import java.util.UUID;
-import javax.ws.rs.GET;
-import javax.ws.rs.PUT;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.LoggingObjectType;
 import org.apache.hop.core.logging.SimpleLoggingObject;
diff --git 
a/engine/src/test/java/org/apache/hop/www/BaseHopServerPluginTest.java 
b/engine/src/test/java/org/apache/hop/www/BaseHopServerPluginTest.java
index 6c2c439142..3b42c8d77f 100644
--- a/engine/src/test/java/org/apache/hop/www/BaseHopServerPluginTest.java
+++ b/engine/src/test/java/org/apache/hop/www/BaseHopServerPluginTest.java
@@ -24,6 +24,8 @@ import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.Arrays;
@@ -31,8 +33,6 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.logging.ILogChannel;
 import org.junit.Before;
 import org.junit.Test;
@@ -48,7 +48,8 @@ public class BaseHopServerPluginTest {
   IHopServerRequestHandler.IOutputStreamResponse outputStreamResponse =
       mock(IHopServerRequestHandler.IOutputStreamResponse.class);
   PrintWriter printWriter = mock(PrintWriter.class);
-  javax.servlet.ServletOutputStream outputStream = 
mock(javax.servlet.ServletOutputStream.class);
+  jakarta.servlet.ServletOutputStream outputStream =
+      mock(jakarta.servlet.ServletOutputStream.class);
 
   ArgumentCaptor<IHopServerRequestHandler.IHopServerRequest> carteReqCaptor =
       
ArgumentCaptor.forClass(IHopServerRequestHandler.IHopServerRequest.class);
diff --git 
a/engine/src/test/java/org/apache/hop/www/GetPipelineStatusServletTest.java 
b/engine/src/test/java/org/apache/hop/www/GetPipelineStatusServletTest.java
index a001c36816..7c76b1184f 100644
--- a/engine/src/test/java/org/apache/hop/www/GetPipelineStatusServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/GetPipelineStatusServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git a/engine/src/test/java/org/apache/hop/www/GetRootServletTest.java 
b/engine/src/test/java/org/apache/hop/www/GetRootServletTest.java
index 73c05b0178..85508235d8 100644
--- a/engine/src/test/java/org/apache/hop/www/GetRootServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/GetRootServletTest.java
@@ -21,10 +21,10 @@ import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.junit.Test;
 
 /**
diff --git a/engine/src/test/java/org/apache/hop/www/GetStatusServletTest.java 
b/engine/src/test/java/org/apache/hop/www/GetStatusServletTest.java
index 00c5e15f37..42288236ea 100644
--- a/engine/src/test/java/org/apache/hop/www/GetStatusServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/GetStatusServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/GetWorkflowStatusServletTest.java 
b/engine/src/test/java/org/apache/hop/www/GetWorkflowStatusServletTest.java
index 1ef136c8fe..ddd69d81ca 100644
--- a/engine/src/test/java/org/apache/hop/www/GetWorkflowStatusServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/GetWorkflowStatusServletTest.java
@@ -25,13 +25,13 @@ import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.ServletOutputStream;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git a/engine/src/test/java/org/apache/hop/www/HopServerTest.java 
b/engine/src/test/java/org/apache/hop/www/HopServerTest.java
index d3fa15c1aa..1a6187ed82 100644
--- a/engine/src/test/java/org/apache/hop/www/HopServerTest.java
+++ b/engine/src/test/java/org/apache/hop/www/HopServerTest.java
@@ -23,10 +23,10 @@ import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.mockStatic;
 import static org.mockito.Mockito.when;
 
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.WebTarget;
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.WebTarget;
+import jakarta.ws.rs.core.MediaType;
 import org.apache.hop.junit.rules.RestoreHopEngineEnvironment;
 import org.glassfish.jersey.client.ClientConfig;
 import org.glassfish.jersey.client.authentication.HttpAuthenticationFeature;
diff --git 
a/engine/src/test/java/org/apache/hop/www/PausePipelineServletTest.java 
b/engine/src/test/java/org/apache/hop/www/PausePipelineServletTest.java
index 98ef9a9fbc..52fdf86e48 100644
--- a/engine/src/test/java/org/apache/hop/www/PausePipelineServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/PausePipelineServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/PrepareExecutionPipelineServletTest.java
 
b/engine/src/test/java/org/apache/hop/www/PrepareExecutionPipelineServletTest.java
index d5ba7aa0b6..c9214e178a 100644
--- 
a/engine/src/test/java/org/apache/hop/www/PrepareExecutionPipelineServletTest.java
+++ 
b/engine/src/test/java/org/apache/hop/www/PrepareExecutionPipelineServletTest.java
@@ -22,12 +22,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/RemovePipelineServletTest.java 
b/engine/src/test/java/org/apache/hop/www/RemovePipelineServletTest.java
index db6d674bf2..a12aa33a68 100644
--- a/engine/src/test/java/org/apache/hop/www/RemovePipelineServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/RemovePipelineServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/RemoveWorkflowServletTest.java 
b/engine/src/test/java/org/apache/hop/www/RemoveWorkflowServletTest.java
index bccc4155d2..9cf9eb21f5 100644
--- a/engine/src/test/java/org/apache/hop/www/RemoveWorkflowServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/RemoveWorkflowServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/SniffTransformServletTest.java 
b/engine/src/test/java/org/apache/hop/www/SniffTransformServletTest.java
index d5e9775a36..aa45252b3b 100644
--- a/engine/src/test/java/org/apache/hop/www/SniffTransformServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/SniffTransformServletTest.java
@@ -23,14 +23,14 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
 import java.util.ArrayList;
 import java.util.List;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/StartExecutionPipelineServletTest.java
 
b/engine/src/test/java/org/apache/hop/www/StartExecutionPipelineServletTest.java
index b255907794..71464b69ca 100644
--- 
a/engine/src/test/java/org/apache/hop/www/StartExecutionPipelineServletTest.java
+++ 
b/engine/src/test/java/org/apache/hop/www/StartExecutionPipelineServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/StartPipelineServletTest.java 
b/engine/src/test/java/org/apache/hop/www/StartPipelineServletTest.java
index 3bf683d9f3..d2ce78949d 100644
--- a/engine/src/test/java/org/apache/hop/www/StartPipelineServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/StartPipelineServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/StartWorkflowServletTest.java 
b/engine/src/test/java/org/apache/hop/www/StartWorkflowServletTest.java
index 938e58a523..e26bcbffcb 100644
--- a/engine/src/test/java/org/apache/hop/www/StartWorkflowServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/StartWorkflowServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git 
a/engine/src/test/java/org/apache/hop/www/StopWorkflowServletTest.java 
b/engine/src/test/java/org/apache/hop/www/StopWorkflowServletTest.java
index 1a019b9509..5018250ff2 100644
--- a/engine/src/test/java/org/apache/hop/www/StopWorkflowServletTest.java
+++ b/engine/src/test/java/org/apache/hop/www/StopWorkflowServletTest.java
@@ -23,12 +23,12 @@ import static org.mockito.ArgumentMatchers.anyString;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.io.StringWriter;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.hop.core.gui.Point;
 import org.apache.hop.core.logging.HopLogStore;
 import org.apache.hop.core.logging.ILogChannel;
diff --git a/lib/pom.xml b/lib/pom.xml
index 0032d91b6e..abc55cc9d0 100644
--- a/lib/pom.xml
+++ b/lib/pom.xml
@@ -90,8 +90,8 @@
         <jakarta-mail.version>2.0.1</jakarta-mail.version>
         <jakarta.version>3.1.0</jakarta.version>
         <javassist.version>3.28.0-GA</javassist.version>
-        <javax.servlet-api.version>4.0.1</javax.servlet-api.version>
-        <jetty.version>9.4.41.v20210516</jetty.version>
+        <jetty-jaas.version>11.0.26</jetty-jaas.version>
+        <jetty.version>12.1.2</jetty.version>
         <jna.version>5.13.0</jna.version>
         <joda-time.version>2.12.1</joda-time.version>
         <jsch.version>0.2.18</jsch.version>
@@ -605,7 +605,7 @@
             <dependency>
                 <groupId>org.eclipse.jetty</groupId>
                 <artifactId>jetty-jaas</artifactId>
-                <version>${jetty.version}</version>
+                <version>${jetty-jaas.version}</version>
             </dependency>
             <dependency>
                 <groupId>org.eclipse.jetty</groupId>
@@ -618,13 +618,13 @@
                 <version>${jetty.version}</version>
             </dependency>
             <dependency>
-                <groupId>org.eclipse.jetty</groupId>
-                <artifactId>jetty-servlet</artifactId>
+                <groupId>org.eclipse.jetty.ee11</groupId>
+                <artifactId>jetty-ee11-servlet</artifactId>
                 <version>${jetty.version}</version>
             </dependency>
             <dependency>
-                <groupId>org.eclipse.jetty</groupId>
-                <artifactId>jetty-servlets</artifactId>
+                <groupId>org.eclipse.jetty.ee11</groupId>
+                <artifactId>jetty-ee11-servlets</artifactId>
                 <version>${jetty.version}</version>
             </dependency>
             <dependency>
@@ -633,8 +633,8 @@
                 <version>${jetty.version}</version>
             </dependency>
             <dependency>
-                <groupId>org.eclipse.jetty</groupId>
-                <artifactId>jetty-webapp</artifactId>
+                <groupId>org.eclipse.jetty.ee11</groupId>
+                <artifactId>jetty-ee11-webapp</artifactId>
                 <version>${jetty.version}</version>
             </dependency>
             <dependency>
diff --git a/plugins/engines/beam/pom.xml b/plugins/engines/beam/pom.xml
index 0bb9944126..29c79b2aec 100644
--- a/plugins/engines/beam/pom.xml
+++ b/plugins/engines/beam/pom.xml
@@ -135,8 +135,8 @@
                     <artifactId>*</artifactId>
                 </exclusion>
                 <exclusion>
-                    <groupId>javax.annotation</groupId>
-                    <artifactId>javax.annotation-api</artifactId>
+                    <groupId>jakarta.annotation</groupId>
+                    <artifactId>jakarta.annotation-api</artifactId>
                 </exclusion>
                 <exclusion>
                     <groupId>net.bytebuddy</groupId>
@@ -209,8 +209,8 @@
                     <artifactId>*</artifactId>
                 </exclusion>
                 <exclusion>
-                    <groupId>javax.annotation</groupId>
-                    <artifactId>javax.annotation-api</artifactId>
+                    <groupId>jakarta.annotation</groupId>
+                    <artifactId>jakarta.annotation-api</artifactId>
                 </exclusion>
                 <exclusion>
                     <groupId>org.apache.httpcomponents</groupId>
@@ -366,8 +366,8 @@
                     <artifactId>*</artifactId>
                 </exclusion>
                 <exclusion>
-                    <groupId>javax.annotation</groupId>
-                    <artifactId>javax.annotation-api</artifactId>
+                    <groupId>jakarta.annotation</groupId>
+                    <artifactId>jakarta.annotation-api</artifactId>
                 </exclusion>
                 <exclusion>
                     <groupId>joda-time</groupId>
@@ -476,8 +476,8 @@
                     <artifactId>*</artifactId>
                 </exclusion>
                 <exclusion>
-                    <groupId>javax.annotation</groupId>
-                    <artifactId>javax.annotation-api</artifactId>
+                    <groupId>jakarta.annotation</groupId>
+                    <artifactId>jakarta.annotation-api</artifactId>
                 </exclusion>
                 <exclusion>
                     <groupId>joda-time</groupId>
@@ -892,8 +892,8 @@
                     <artifactId>*</artifactId>
                 </exclusion>
                 <exclusion>
-                    <groupId>javax.annotation</groupId>
-                    <artifactId>javax.annotation-api</artifactId>
+                    <groupId>jakarta.annotation</groupId>
+                    <artifactId>jakarta.annotation-api</artifactId>
                 </exclusion>
                 <exclusion>
                     <groupId>joda-time</groupId>
@@ -1131,8 +1131,8 @@
                     <artifactId>jakarta.activation-api</artifactId>
                 </exclusion>
                 <exclusion>
-                    <groupId>javax.servlet</groupId>
-                    <artifactId>javax.servlet-api</artifactId>
+                    <groupId>jakarta.servlet</groupId>
+                    <artifactId>jakarta.servlet-api</artifactId>
                 </exclusion>
                 <exclusion>
                     <groupId>log4j</groupId>
@@ -1282,12 +1282,12 @@
                     <artifactId>jakarta.activation-api</artifactId>
                 </exclusion>
                 <exclusion>
-                    <groupId>javax.inject</groupId>
-                    <artifactId>javax.inject</artifactId>
+                    <groupId>jakarta.inject</groupId>
+                    <artifactId>jakarta.inject</artifactId>
                 </exclusion>
                 <exclusion>
-                    <groupId>javax.servlet</groupId>
-                    <artifactId>javax.servlet-api</artifactId>
+                    <groupId>jakarta.servlet</groupId>
+                    <artifactId>jakarta.servlet-api</artifactId>
                 </exclusion>
                 <exclusion>
                     <groupId>log4j</groupId>
diff --git 
a/plugins/misc/async/src/main/java/org/apache/hop/www/async/AsyncRunServlet.java
 
b/plugins/misc/async/src/main/java/org/apache/hop/www/async/AsyncRunServlet.java
index a94e9fd9f2..99e16a9e78 100644
--- 
a/plugins/misc/async/src/main/java/org/apache/hop/www/async/AsyncRunServlet.java
+++ 
b/plugins/misc/async/src/main/java/org/apache/hop/www/async/AsyncRunServlet.java
@@ -17,6 +17,9 @@
 
 package org.apache.hop.www.async;
 
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
@@ -27,9 +30,6 @@ import java.util.UUID;
 import java.util.concurrent.ArrayBlockingQueue;
 import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.TimeUnit;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
diff --git 
a/plugins/misc/async/src/main/java/org/apache/hop/www/async/AsyncStatusServlet.java
 
b/plugins/misc/async/src/main/java/org/apache/hop/www/async/AsyncStatusServlet.java
index 820c5efaee..08911fc58c 100644
--- 
a/plugins/misc/async/src/main/java/org/apache/hop/www/async/AsyncStatusServlet.java
+++ 
b/plugins/misc/async/src/main/java/org/apache/hop/www/async/AsyncStatusServlet.java
@@ -18,13 +18,13 @@
 package org.apache.hop.www.async;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
+import jakarta.servlet.ServletException;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.nio.charset.StandardCharsets;
 import java.util.ArrayList;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.annotations.HopServerServlet;
diff --git 
a/plugins/misc/rest/src/main/java/org/apache/hop/metadata/rest/RestConnection.java
 
b/plugins/misc/rest/src/main/java/org/apache/hop/metadata/rest/RestConnection.java
index e771803a94..776a3411ca 100644
--- 
a/plugins/misc/rest/src/main/java/org/apache/hop/metadata/rest/RestConnection.java
+++ 
b/plugins/misc/rest/src/main/java/org/apache/hop/metadata/rest/RestConnection.java
@@ -17,11 +17,11 @@
 
 package org.apache.hop.metadata.rest;
 
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.Invocation;
-import javax.ws.rs.client.WebTarget;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.Invocation;
+import jakarta.ws.rs.client.WebTarget;
+import jakarta.ws.rs.core.Response;
 import lombok.Getter;
 import lombok.Setter;
 import org.apache.commons.lang.StringUtils;
diff --git a/plugins/pom.xml b/plugins/pom.xml
index 758724db81..129777cf0b 100644
--- a/plugins/pom.xml
+++ b/plugins/pom.xml
@@ -41,6 +41,11 @@
     </modules>
 
     <dependencies>
+        <dependency>
+            <groupId>jakarta.servlet</groupId>
+            <artifactId>jakarta.servlet-api</artifactId>
+            <version>6.1.0</version>
+        </dependency>
         <dependency>
             <groupId>org.apache.hop</groupId>
             <artifactId>hop-core</artifactId>
diff --git a/plugins/tech/google/pom.xml b/plugins/tech/google/pom.xml
index 8de8e19f6b..84c638021a 100755
--- a/plugins/tech/google/pom.xml
+++ b/plugins/tech/google/pom.xml
@@ -37,7 +37,7 @@
         
<google-api-drive.version>v3-rev20250216-2.0.0</google-api-drive.version>
         
<google-api-sheets.version>v4-rev20250211-2.0.0</google-api-sheets.version>
         
<google-api-sqladmin.version>v1-rev20230721-2.0.0</google-api-sqladmin.version>
-        <jetty-client.version>6.1.26</jetty-client.version>
+        <jetty-client.version>12.1.2</jetty-client.version>
     </properties>
 
     <dependencyManagement>
@@ -176,13 +176,13 @@
             <artifactId>protobuf-java-util</artifactId>
         </dependency>
         <dependency>
-            <groupId>org.mortbay.jetty</groupId>
+            <groupId>org.eclipse.jetty</groupId>
             <artifactId>jetty-client</artifactId>
             <version>${jetty-client.version}</version>
             <exclusions>
                 <exclusion>
-                    <groupId>org.mortbay.jetty</groupId>
-                    <artifactId>servlet-api</artifactId>
+                    <groupId>org.eclipse.jetty.ee11</groupId>
+                    <artifactId>servlet-ee11-api</artifactId>
                 </exclusion>
             </exclusions>
         </dependency>
diff --git 
a/plugins/tech/google/src/main/java/org/apache/hop/vfs/googledrive/util/CustomLocalServerReceiver.java
 
b/plugins/tech/google/src/main/java/org/apache/hop/vfs/googledrive/util/CustomLocalServerReceiver.java
index c83c95f802..1748e2cf30 100644
--- 
a/plugins/tech/google/src/main/java/org/apache/hop/vfs/googledrive/util/CustomLocalServerReceiver.java
+++ 
b/plugins/tech/google/src/main/java/org/apache/hop/vfs/googledrive/util/CustomLocalServerReceiver.java
@@ -20,16 +20,16 @@ package org.apache.hop.vfs.googledrive.util;
 import 
com.google.api.client.extensions.java6.auth.oauth2.VerificationCodeReceiver;
 import com.google.api.client.util.Throwables;
 import java.io.IOException;
+import java.net.InetSocketAddress;
 import java.net.Socket;
-import java.net.SocketAddress;
 import java.net.URL;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.mortbay.jetty.Connector;
-import org.mortbay.jetty.Request;
-import org.mortbay.jetty.Server;
-import org.mortbay.jetty.webapp.WebAppContext;
+import org.eclipse.jetty.ee11.webapp.WebAppContext;
+import org.eclipse.jetty.server.Request;
+import org.eclipse.jetty.server.Response;
+import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.util.Callback;
+import org.eclipse.jetty.util.Fields;
+import org.eclipse.jetty.util.resource.ResourceFactory;
 
 public class CustomLocalServerReceiver implements VerificationCodeReceiver {
 
@@ -60,15 +60,10 @@ public class CustomLocalServerReceiver implements 
VerificationCodeReceiver {
     }
 
     this.server = new Server(this.port);
-    Connector[] connectors = this.server.getConnectors();
-    int length = connectors.length;
 
-    for (int i = 0; i < length; ++i) {
-      Connector c = connectors[i];
-      c.setHost(this.host);
-    }
-
-    this.server.addHandler(new CallbackHandler());
+    InetSocketAddress socketAddress = new InetSocketAddress(this.host, 
this.port);
+    this.server = new Server(socketAddress);
+    this.server.setHandler(new CallbackHandler());
 
     try {
       this.server.start();
@@ -108,7 +103,7 @@ public class CustomLocalServerReceiver implements 
VerificationCodeReceiver {
 
   private static int getUnusedPort() throws IOException {
     Socket s = new Socket();
-    s.bind((SocketAddress) null);
+    s.bind((InetSocketAddress) null);
 
     int var1;
     try {
@@ -124,29 +119,33 @@ public class CustomLocalServerReceiver implements 
VerificationCodeReceiver {
     CallbackHandler() {
       URL warUrl = 
this.getClass().getClassLoader().getResource("success_page");
       String warUrlString = warUrl.toExternalForm();
-      setResourceBase(warUrlString);
+      setBaseResource(ResourceFactory.of(this).newResource(warUrlString));
       setContextPath("/Callback");
     }
 
     @Override
-    public void handle(
-        String target, HttpServletRequest request, HttpServletResponse 
response, int dispatch)
-        throws IOException, ServletException {
-      if (target.contains("/Callback")) {
+    public boolean handle(Request request, Response response, Callback 
callback) throws Exception {
+      String pathInContext = request.getHttpURI().getPath();
+
+      if (pathInContext.contains("/Callback")) {
 
-        CustomLocalServerReceiver.this.error = request.getParameter("error");
+        Fields params = Request.extractQueryParameters(request);
+
+        CustomLocalServerReceiver.this.error = params.getValue("error");
         if (CustomLocalServerReceiver.this.code == null) {
-          CustomLocalServerReceiver.this.code = request.getParameter("code");
+          CustomLocalServerReceiver.this.code = params.getValue("code");
         }
         if (CustomLocalServerReceiver.this.url != null
             && CustomLocalServerReceiver.this.error != null
             && CustomLocalServerReceiver.this.error.equals("access_denied")) {
-          response.sendRedirect(CustomLocalServerReceiver.this.url);
+          Response.sendRedirect(request, response, callback, 
CustomLocalServerReceiver.this.url);
         } else {
-          super.handle(target, request, response, dispatch);
+          return super.handle(request, response, callback);
         }
-        ((Request) request).setHandled(true);
       }
+
+      callback.succeeded();
+      return true;
     }
   }
 
diff --git a/plugins/transforms/rest/pom.xml b/plugins/transforms/rest/pom.xml
index 6bd3312c2b..9682099227 100644
--- a/plugins/transforms/rest/pom.xml
+++ b/plugins/transforms/rest/pom.xml
@@ -38,7 +38,7 @@
         <dependency>
             <groupId>org.glassfish.jersey.connectors</groupId>
             <artifactId>jersey-apache-connector</artifactId>
-            <version>2.43</version>
+            <version>3.1.11</version>
         </dependency>
     </dependencies>
 
diff --git 
a/plugins/transforms/rest/src/main/java/org/apache/hop/pipeline/transforms/rest/Rest.java
 
b/plugins/transforms/rest/src/main/java/org/apache/hop/pipeline/transforms/rest/Rest.java
index d9192faf6f..8728cd5547 100644
--- 
a/plugins/transforms/rest/src/main/java/org/apache/hop/pipeline/transforms/rest/Rest.java
+++ 
b/plugins/transforms/rest/src/main/java/org/apache/hop/pipeline/transforms/rest/Rest.java
@@ -19,6 +19,16 @@ package org.apache.hop.pipeline.transforms.rest;
 
 import static org.apache.hop.core.Const.NVL;
 
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.Entity;
+import jakarta.ws.rs.client.Invocation;
+import jakarta.ws.rs.client.WebTarget;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MultivaluedHashMap;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriBuilder;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.IOException;
@@ -28,16 +38,6 @@ import java.security.NoSuchAlgorithmException;
 import java.security.cert.CertificateException;
 import java.util.List;
 import javax.net.ssl.SSLContext;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.Entity;
-import javax.ws.rs.client.Invocation;
-import javax.ws.rs.client.WebTarget;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedHashMap;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriBuilder;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.encryption.Encr;
diff --git 
a/plugins/transforms/rest/src/main/java/org/apache/hop/pipeline/transforms/rest/RestData.java
 
b/plugins/transforms/rest/src/main/java/org/apache/hop/pipeline/transforms/rest/RestData.java
index 73f5876708..282e93908e 100644
--- 
a/plugins/transforms/rest/src/main/java/org/apache/hop/pipeline/transforms/rest/RestData.java
+++ 
b/plugins/transforms/rest/src/main/java/org/apache/hop/pipeline/transforms/rest/RestData.java
@@ -17,8 +17,8 @@
 
 package org.apache.hop.pipeline.transforms.rest;
 
+import jakarta.ws.rs.core.MediaType;
 import javax.net.ssl.SSLContext;
-import javax.ws.rs.core.MediaType;
 import org.apache.hop.core.row.IRowMeta;
 import org.apache.hop.pipeline.transform.BaseTransformData;
 import org.apache.hop.pipeline.transform.ITransformData;
diff --git 
a/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestCallRestTest.java
 
b/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestCallRestTest.java
index b0993dd895..d60201f335 100644
--- 
a/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestCallRestTest.java
+++ 
b/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestCallRestTest.java
@@ -30,19 +30,19 @@ import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.client.ClientBuilder;
+import jakarta.ws.rs.client.Entity;
+import jakarta.ws.rs.client.Invocation;
+import jakarta.ws.rs.client.WebTarget;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MultivaluedHashMap;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.UriBuilder;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.List;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.Entity;
-import javax.ws.rs.client.Invocation;
-import javax.ws.rs.client.WebTarget;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedHashMap;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.UriBuilder;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.encryption.Encr;
 import org.apache.hop.core.encryption.TwoWayPasswordEncoderPluginType;
diff --git 
a/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestInitAndProcessTest.java
 
b/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestInitAndProcessTest.java
index 3824596306..5ea997552b 100644
--- 
a/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestInitAndProcessTest.java
+++ 
b/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestInitAndProcessTest.java
@@ -24,7 +24,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.spy;
 
-import javax.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.MediaType;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.encryption.Encr;
 import org.apache.hop.core.encryption.TwoWayPasswordEncoderPluginType;
diff --git 
a/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestProcessRowTest.java
 
b/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestProcessRowTest.java
index 0c468025c3..c60919f71f 100644
--- 
a/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestProcessRowTest.java
+++ 
b/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestProcessRowTest.java
@@ -25,9 +25,9 @@ import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.when;
 
+import jakarta.ws.rs.core.MediaType;
 import java.util.ArrayList;
 import java.util.List;
-import javax.ws.rs.core.MediaType;
 import org.apache.hop.core.exception.HopException;
 import org.apache.hop.core.logging.ILoggingObject;
 import org.apache.hop.core.row.IRowMeta;
diff --git 
a/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestTest.java
 
b/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestTest.java
index 387cd09a41..fe3b697c91 100644
--- 
a/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestTest.java
+++ 
b/plugins/transforms/rest/src/test/java/org/apache/hop/pipeline/transforms/rest/RestTest.java
@@ -26,10 +26,10 @@ import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.mockStatic;
 import static org.mockito.Mockito.spy;
 
-import javax.ws.rs.client.Client;
-import javax.ws.rs.core.MultivaluedHashMap;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
+import jakarta.ws.rs.client.Client;
+import jakarta.ws.rs.core.MultivaluedHashMap;
+import jakarta.ws.rs.core.MultivaluedMap;
+import jakarta.ws.rs.core.Response;
 import org.apache.hop.pipeline.PipelineMeta;
 import org.apache.hop.pipeline.engines.local.LocalPipelineEngine;
 import org.apache.hop.pipeline.transform.TransformMeta;
diff --git 
a/plugins/transforms/salesforce/src/main/java/org/apache/hop/pipeline/transforms/salesforce/SalesforceConnection.java
 
b/plugins/transforms/salesforce/src/main/java/org/apache/hop/pipeline/transforms/salesforce/SalesforceConnection.java
index 22b60d9de4..9c682b586c 100644
--- 
a/plugins/transforms/salesforce/src/main/java/org/apache/hop/pipeline/transforms/salesforce/SalesforceConnection.java
+++ 
b/plugins/transforms/salesforce/src/main/java/org/apache/hop/pipeline/transforms/salesforce/SalesforceConnection.java
@@ -39,6 +39,7 @@ import com.sforce.ws.ConnectionException;
 import com.sforce.ws.ConnectorConfig;
 import com.sforce.ws.bind.XmlObject;
 import com.sforce.ws.wsdl.Constants;
+import jakarta.xml.soap.SOAPException;
 import java.io.IOException;
 import java.io.StringWriter;
 import java.util.ArrayList;
@@ -49,7 +50,6 @@ import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import javax.xml.namespace.QName;
-import javax.xml.soap.SOAPException;
 import org.apache.commons.lang.StringUtils;
 import org.apache.hop.core.Const;
 import org.apache.hop.core.encryption.Encr;
diff --git a/rap/pom.xml b/rap/pom.xml
index b37b764ddb..94d4173bb9 100644
--- a/rap/pom.xml
+++ b/rap/pom.xml
@@ -29,7 +29,7 @@
     <name>Hop GUI (RAP fragment)</name>
 
     <properties>
-        <rap.version>3.29.0</rap.version>
+        <rap.version>4.4.0</rap.version>
     </properties>
 
     <dependencies>
diff --git 
a/rap/src/main/java/org/apache/hop/ui/hopgui/HopWebServletContextListener.java 
b/rap/src/main/java/org/apache/hop/ui/hopgui/HopWebServletContextListener.java
index 982e0c8d85..2a420a566f 100644
--- 
a/rap/src/main/java/org/apache/hop/ui/hopgui/HopWebServletContextListener.java
+++ 
b/rap/src/main/java/org/apache/hop/ui/hopgui/HopWebServletContextListener.java
@@ -17,8 +17,8 @@
 
 package org.apache.hop.ui.hopgui;
 
+import jakarta.servlet.ServletContextEvent;
 import java.util.logging.Logger;
-import javax.servlet.ServletContextEvent;
 import org.apache.hop.core.HopEnvironment;
 import org.apache.hop.core.exception.HopException;
 import org.eclipse.rap.rwt.engine.RWTServletContextListener;
diff --git a/rcp/pom.xml b/rcp/pom.xml
index ab73576226..74ec434c52 100644
--- a/rcp/pom.xml
+++ b/rcp/pom.xml
@@ -50,7 +50,7 @@
         </dependency>
         <dependency>
             <groupId>org.eclipse.platform</groupId>
-            <artifactId>org.eclipse.swt.gtk.linux.x86_64</artifactId>
+            <artifactId>${swt.artifactId}</artifactId>
             <version>${org.eclipse.platform.version}</version>
             <scope>provided</scope>
         </dependency>
diff --git a/rest/pom.xml b/rest/pom.xml
index 5986e2e304..0ca7f867df 100644
--- a/rest/pom.xml
+++ b/rest/pom.xml
@@ -30,8 +30,8 @@
     <name>Hop REST</name>
 
     <properties>
-        <jakarta.version>3.1.0</jakarta.version>
-        <jersey.version>3.1.0</jersey.version>
+        <jakarta.version>4.0.0</jakarta.version>
+        <jersey.version>3.1.11</jersey.version>
     </properties>
 
     <dependencyManagement>
@@ -117,17 +117,17 @@
         <dependency>
             <groupId>org.glassfish.jersey.containers</groupId>
             <artifactId>jersey-container-servlet</artifactId>
-            <version>${jakarta.version}</version>
+            <version>${jersey.version}</version>
         </dependency>
         <dependency>
             <groupId>org.glassfish.jersey.inject</groupId>
             <artifactId>jersey-hk2</artifactId>
-            <version>${jakarta.version}</version>
+            <version>${jersey.version}</version>
         </dependency>
         <dependency>
             <groupId>org.glassfish.jersey.media</groupId>
             <artifactId>jersey-media-json-jackson</artifactId>
-            <version>${jakarta.version}</version>
+            <version>${jersey.version}</version>
         </dependency>
     </dependencies>
 


Reply via email to