This is an automated email from the ASF dual-hosted git repository.
dlmarion pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/accumulo.git
The following commit(s) were added to refs/heads/main by this push:
new 881b7915c4 Updated Jakarta EE, Jersey, and Jetty (#5942)
881b7915c4 is described below
commit 881b7915c42f3f6c7901ebd776080a8766268ac9
Author: Dave Marion <[email protected]>
AuthorDate: Tue Nov 18 08:11:11 2025 -0500
Updated Jakarta EE, Jersey, and Jetty (#5942)
Closes #4828
---
assemble/pom.xml | 7 ++++++-
assemble/src/main/resources/LICENSE | 3 ++-
pom.xml | 14 ++++++++++----
server/monitor/pom.xml | 6 +++---
.../apache/accumulo/monitor/EmbeddedWebServer.java | 4 ++--
.../java/org/apache/accumulo/monitor/Monitor.java | 22 +++++++++-------------
6 files changed, 32 insertions(+), 24 deletions(-)
diff --git a/assemble/pom.xml b/assemble/pom.xml
index 9770ffffa1..e45ff3441f 100644
--- a/assemble/pom.xml
+++ b/assemble/pom.xml
@@ -355,7 +355,7 @@
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-servlet</artifactId>
+ <artifactId>jetty-session</artifactId>
<optional>true</optional>
</dependency>
<dependency>
@@ -363,6 +363,11 @@
<artifactId>jetty-util</artifactId>
<optional>true</optional>
</dependency>
+ <dependency>
+ <groupId>org.eclipse.jetty.ee10</groupId>
+ <artifactId>jetty-ee10-servlet</artifactId>
+ <optional>true</optional>
+ </dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
diff --git a/assemble/src/main/resources/LICENSE
b/assemble/src/main/resources/LICENSE
index 2c557c3897..9404d474cb 100644
--- a/assemble/src/main/resources/LICENSE
+++ b/assemble/src/main/resources/LICENSE
@@ -730,8 +730,9 @@ to the terms and conditions of the following licenses.
* org.eclipse.jetty:jetty-io
* org.eclipse.jetty:jetty-security
* org.eclipse.jetty:jetty-server
-* org.eclipse.jetty:jetty-servlet
+* org.eclipse.jetty:jetty-session
* org.eclipse.jetty:jetty-util
+* org.eclipse.jetty.ee10:jetty-ee10-servlet
* org.glassfish.hk2:hk2-api
* org.glassfish.hk2:hk2-locator
* org.glassfish.hk2:hk2-utils
diff --git a/pom.xml b/pom.xml
index d4c35cd1e3..8cab66ba6b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -211,7 +211,7 @@ under the License.
<dependency>
<groupId>jakarta.platform</groupId>
<artifactId>jakarta.jakartaee-bom</artifactId>
- <version>9.1.0</version>
+ <version>10.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
@@ -225,7 +225,14 @@ under the License.
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-bom</artifactId>
- <version>11.0.23</version>
+ <version>12.1.1</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.eclipse.jetty.ee10</groupId>
+ <artifactId>jetty-ee10-bom</artifactId>
+ <version>12.1.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
@@ -246,8 +253,7 @@ under the License.
<dependency>
<groupId>org.glassfish.jersey</groupId>
<artifactId>jersey-bom</artifactId>
- <!-- 3.1.0 would require jakarta.ws.rs-api 3.1.0, jakartaee 9 uses
3.0.0 -->
- <version>3.0.9</version>
+ <version>3.1.11</version>
<type>pom</type>
<scope>import</scope>
</dependency>
diff --git a/server/monitor/pom.xml b/server/monitor/pom.xml
index b6b874bda5..1f6e23b7a7 100644
--- a/server/monitor/pom.xml
+++ b/server/monitor/pom.xml
@@ -130,11 +130,11 @@
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-servlet</artifactId>
+ <artifactId>jetty-util</artifactId>
</dependency>
<dependency>
- <groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-util</artifactId>
+ <groupId>org.eclipse.jetty.ee10</groupId>
+ <artifactId>jetty-ee10-servlet</artifactId>
</dependency>
<dependency>
<groupId>org.glassfish.hk2</groupId>
diff --git
a/server/monitor/src/main/java/org/apache/accumulo/monitor/EmbeddedWebServer.java
b/server/monitor/src/main/java/org/apache/accumulo/monitor/EmbeddedWebServer.java
index 8390a36976..d33a1d6c94 100644
---
a/server/monitor/src/main/java/org/apache/accumulo/monitor/EmbeddedWebServer.java
+++
b/server/monitor/src/main/java/org/apache/accumulo/monitor/EmbeddedWebServer.java
@@ -23,13 +23,13 @@ import java.util.EnumSet;
import org.apache.accumulo.core.conf.AccumuloConfiguration;
import org.apache.accumulo.core.conf.Property;
import org.apache.commons.validator.routines.UrlValidator;
+import org.eclipse.jetty.ee10.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee10.servlet.ServletHolder;
import org.eclipse.jetty.server.AbstractConnectionFactory;
import org.eclipse.jetty.server.HttpConnectionFactory;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.ServerConnector;
import org.eclipse.jetty.server.SslConnectionFactory;
-import org.eclipse.jetty.servlet.ServletContextHandler;
-import org.eclipse.jetty.servlet.ServletHolder;
import org.eclipse.jetty.util.ssl.SslContextFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git
a/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
b/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
index 070b93266d..13f33e415e 100644
--- a/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
+++ b/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
@@ -86,11 +86,10 @@ import org.apache.accumulo.server.ServerContext;
import org.apache.accumulo.server.util.TableInfoUtil;
import org.apache.thrift.transport.TTransportException;
import org.apache.zookeeper.KeeperException;
+import org.eclipse.jetty.ee10.servlet.ResourceServlet;
+import org.eclipse.jetty.ee10.servlet.ServletHolder;
import org.eclipse.jetty.io.Connection;
import org.eclipse.jetty.io.ConnectionStatistics;
-import org.eclipse.jetty.servlet.DefaultServlet;
-import org.eclipse.jetty.servlet.ServletHolder;
-import org.eclipse.jetty.util.resource.Resource;
import org.glassfish.hk2.api.Factory;
import org.glassfish.hk2.utilities.binding.AbstractBinder;
import org.glassfish.jersey.jackson.JacksonFeature;
@@ -365,7 +364,7 @@ public class Monitor extends AbstractServer implements
Connection.Listener {
try {
log.debug("Trying monitor on port {}", port);
server = new EmbeddedWebServer(this, port);
- server.addServlet(getDefaultServlet(), "/resources/*");
+ server.addServlet(getResourcesServlet(), "/resources/*");
server.addServlet(getRestServlet(), "/rest/*");
server.addServlet(getRestV2Servlet(), "/rest-v2/*");
server.addServlet(getViewServlet(), "/*");
@@ -460,15 +459,12 @@ public class Monitor extends AbstractServer implements
Connection.Listener {
log.info("stop requested. exiting ... ");
}
- private ServletHolder getDefaultServlet() {
- return new ServletHolder(new DefaultServlet() {
- private static final long serialVersionUID = 1L;
-
- @Override
- public Resource getResource(String pathInContext) {
- return Resource.newClassPathResource("/org/apache/accumulo/monitor" +
pathInContext);
- }
- });
+ private ServletHolder getResourcesServlet() {
+ ServletHolder holder = new ServletHolder("resources",
ResourceServlet.class);
+ holder.setInitParameter("dirAllowed", "false");
+ holder.setInitParameter("baseResource",
+ Monitor.class.getResource("resources").toExternalForm());
+ return holder;
}
public static class MonitorFactory extends AbstractBinder implements
Factory<Monitor> {