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

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

commit 1dbb17c8fac3f64c7261350463c55efdc8b116b9
Author: Andy Seaborne <[email protected]>
AuthorDate: Fri Oct 24 09:50:06 2025 +0100

    GH-3543: Switch from EE10 to EE 11
---
 .../java/org/apache/jena/riot/RDFLanguages.java    | 11 ++------
 .../main/java/org/apache/jena/riot/WebContent.java | 33 +++++-----------------
 .../sparql/engine/iterator/QueryIterUnfold.java    |  1 -
 .../org/apache/jena/riot/web/TestWebContent.java   |  4 +--
 .../src/main/java/org/apache/jena/fuseki/DEF.java  | 11 ++------
 .../jena/fuseki/servlets/CrossOriginFilter.java    |  4 +--
 jena-fuseki2/jena-fuseki-main/pom.xml              |  8 +++---
 .../org/apache/jena/fuseki/main/FusekiServer.java  | 10 +++----
 .../org/apache/jena/fuseki/main/JettyHttps.java    |  2 +-
 .../apache/jena/fuseki/main/JettySecurityLib.java  |  4 +--
 .../org/apache/jena/fuseki/main/JettyServer.java   |  8 +++---
 .../org/apache/jena/fuseki/main/sys/JettyLib.java  |  2 +-
 .../apache/jena/fuseki/mod/shiro/FMod_Shiro.java   |  4 +--
 .../org/apache/jena/fuseki/main/TestQuery.java     |  8 ++++++
 .../main/access/TestSecurityBuilderSetup.java      |  2 +-
 .../main/access/TestSecurityFilterFuseki.java      |  2 +-
 .../examples/ExFusekiMain_1_Servlet_AddFilter.java |  6 ++--
 .../main/examples/ExFusekiMain_2_AddShiro.java     |  8 +++---
 .../main/examples/ExFuseki_06_DataAccessCtl.java   |  2 +-
 pom.xml                                            |  4 +--
 20 files changed, 54 insertions(+), 80 deletions(-)

diff --git a/jena-arq/src/main/java/org/apache/jena/riot/RDFLanguages.java 
b/jena-arq/src/main/java/org/apache/jena/riot/RDFLanguages.java
index 9662a4f289..908b0a847d 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/RDFLanguages.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/RDFLanguages.java
@@ -74,7 +74,7 @@ public class RDFLanguages
     /** <a href="http://www.w3.org/TR/turtle/";>Turtle</a>*/
     public static final Lang TURTLE     = LangBuilder.create(strLangTurtle, 
contentTypeTurtle)
                                                      .addAltNames("TTL")
-                                                     
.addAltContentTypes(contentTypeTurtleAlt1)
+                                                     
.addAltContentTypes(contentTypeTurtleAlt)
                                                      .addFileExtensions("ttl")
                                                      .build();
 
@@ -94,6 +94,7 @@ public class RDFLanguages
                                                      
.addAltContentTypes(contentTypeNTriplesAlt)
                                                      .addFileExtensions("nt")
                                                      .build();
+
     /** Alternative constant for {@link #NTRIPLES} */
     public static final Lang NT         = NTRIPLES;
 
@@ -123,14 +124,12 @@ public class RDFLanguages
 
     /** <a href="http://www.w3.org/TR/trig/";>TriG</a> */
     public static final Lang TRIG       = LangBuilder.create(strLangTriG, 
contentTypeTriG)
-                                                     
.addAltContentTypes(contentTypeTriGAlt1)
                                                      .addFileExtensions("trig")
                                                      .build();
 
     /** <a href="http://www.w3.org/TR/n-quads";>N-Quads</a> */
     public static final Lang NQUADS     = LangBuilder.create(strLangNQuads, 
contentTypeNQuads)
                                                      .addAltNames("NQ", 
"NQuads", "NQuad", "N-Quad", "N-Quads")
-                                                     
.addAltContentTypes(contentTypeNQuadsAlt1)
                                                      .addFileExtensions("nq")
                                                      .build();
 
@@ -392,12 +391,6 @@ public class RDFLanguages
         MediaType ct = MediaType.create(contentType);
         if ( ct.getCharset() != null )
             return ct.getCharset();
-
-        String mt = ct.getContentTypeStr();
-        if ( contentTypeNTriples.equals(mt) )        return charsetUTF8;
-        if ( contentTypeNTriplesAlt.equals(mt) )     return charsetASCII;
-        if ( contentTypeNQuads.equals(mt) )          return charsetUTF8;
-        if ( contentTypeNQuadsAlt1.equals(mt) )      return charsetASCII;
         return charsetUTF8;
     }
 
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java 
b/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java
index 2004d757c4..e75b685392 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/WebContent.java
@@ -25,17 +25,13 @@ import org.apache.jena.riot.system.ContentHeaderBuilder;
 
 public class WebContent {
     // Names for things.
+    // Some alternative, incorrect, MIME types are defined for convenience. 
These are "Alt"
 
     public static final String contentTypeTurtle = "text/turtle";
     public static final ContentType ctTurtle = 
ContentType.create(contentTypeTurtle);
 
-    public static final String contentTypeTurtleAlt1 = "application/turtle";
-    public static final ContentType ctTurtleAlt1 = 
ContentType.create(contentTypeTurtleAlt1);
-
-    // Name no longer supported - Jena 4.0.0.
-// public static final String contentTypeTurtleAlt2 = "application/x-turtle" ;
-// public static final ContentType ctTurtleAlt2 =
-// ContentType.create(contentTypeTurtleAlt2) ;
+    public static final String contentTypeTurtleAlt = "application/turtle";
+    public static final ContentType ctTurtleAlt = 
ContentType.create(contentTypeTurtleAlt);
 
     public static final String contentTypeRDFXML = "application/rdf+xml";
     public static final ContentType ctRDFXML = 
ContentType.create(contentTypeRDFXML);
@@ -52,7 +48,8 @@ public class WebContent {
     public static final String contentTypeNTriples = "application/n-triples";
     public static final ContentType ctNTriples = 
ContentType.create(contentTypeNTriples);
 
-    public static final String contentTypeNTriplesAlt = contentTypeTextPlain;
+    // N-Triples was text/pain in RDF 1.0.
+    public static final String contentTypeNTriplesAlt = "text/plain";
     public static final ContentType ctNTriplesAlt = 
ContentType.create(contentTypeNTriplesAlt);
 
     public static final String contentTypeXML = "application/xml";
@@ -67,29 +64,13 @@ public class WebContent {
     public static final String contentTypeNQuads = "application/n-quads";
     public static final ContentType ctNQuads = 
ContentType.create(contentTypeNQuads);
 
-    public static final String contentTypeTriGAlt1 = "text/trig";
-    public static final ContentType ctTriGAlt1 = 
ContentType.create(contentTypeTriGAlt1);
-
     // Unofficial
     public static final String      contentTypeRDFProto          = 
"application/rdf+protobuf" ;
     public static final ContentType ctRDFProto                   = 
ContentType.create(contentTypeRDFProto) ;
 
-    // Name no longer supported - Jena 4.0.0.
-// public static final String contentTypeTriGAlt2 = "application/x-trig" ;
-// public static final ContentType ctTriGAlt2 =
-// ContentType.create(contentTypeTriGAlt2) ;
-
+    // Unofficial
     public static final String contentTypeRDFThrift = "application/rdf+thrift";
     public static final ContentType ctRDFTHRIFT = 
ContentType.create(contentTypeRDFThrift);
-
-    public static final String contentTypeNQuadsAlt1 = "text/n-quads";
-    public static final ContentType ctNQuadsAlt1 = 
ContentType.create(contentTypeNQuadsAlt1);
-
-    // Name no longer supported - Jena 4.0.0.
-// public static final String contentTypeNQuadsAlt2 = "text/nquads" ;
-// public static final ContentType ctNQuadsAlt2 =
-// ContentType.create(contentTypeNQuadsAlt2) ;
-
     public static final String contentTypeTriX = "application/trix";
     public static final ContentType ctTriX = 
ContentType.create(contentTypeTriX);
     public static final String contentTypeTriXxml = "application/trix+xml";
@@ -180,7 +161,7 @@ public class WebContent {
     public static final String langNQuads = "NQUADS";
     public static final String langTriG = "TRIG";
 
-    /** Java name for UTF-8 encoding */
+    /** UTF-8 encoding */
     public static final String encodingUTF8 = "utf-8";
 
     /** Accept header part when looking for a graph */
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/engine/iterator/QueryIterUnfold.java
 
b/jena-arq/src/main/java/org/apache/jena/sparql/engine/iterator/QueryIterUnfold.java
index 500aefa3d3..657d97e325 100644
--- 
a/jena-arq/src/main/java/org/apache/jena/sparql/engine/iterator/QueryIterUnfold.java
+++ 
b/jena-arq/src/main/java/org/apache/jena/sparql/engine/iterator/QueryIterUnfold.java
@@ -113,7 +113,6 @@ public class QueryIterUnfold extends QueryIterRepeatApply
         protected void closeIterator() { } // nothing to do really
     }
 
-
     protected class QueryIterUnfoldWorkerForLists extends 
QueryIterUnfoldWorkerBase<CDTValue> {
 
         protected int nextIndex = 0;
diff --git 
a/jena-arq/src/test/java/org/apache/jena/riot/web/TestWebContent.java 
b/jena-arq/src/test/java/org/apache/jena/riot/web/TestWebContent.java
index a01308f1b7..5f52f2d6e7 100644
--- a/jena-arq/src/test/java/org/apache/jena/riot/web/TestWebContent.java
+++ b/jena-arq/src/test/java/org/apache/jena/riot/web/TestWebContent.java
@@ -29,7 +29,7 @@ public class TestWebContent {
     @Test
     public void testCanonicaliseMimeTypes1() {
         testCanonicalise(WebContent.contentTypeTurtle, 
WebContent.contentTypeTurtle);
-        testCanonicalise(WebContent.contentTypeTurtleAlt1, 
WebContent.contentTypeTurtle);
+        testCanonicalise(WebContent.contentTypeTurtleAlt, 
WebContent.contentTypeTurtle);
     }
 
     @Test
@@ -48,13 +48,11 @@ public class TestWebContent {
     @Test
     public void testCanonicaliseMimeTypes4() {
         testCanonicalise(WebContent.contentTypeNQuads, 
WebContent.contentTypeNQuads);
-        testCanonicalise(WebContent.contentTypeNQuadsAlt1, 
WebContent.contentTypeNQuads);
     }
 
     @Test
     public void testCanonicaliseMimeTypes5() {
         testCanonicalise(WebContent.contentTypeTriG, 
WebContent.contentTypeTriG);
-        testCanonicalise(WebContent.contentTypeTriGAlt1, 
WebContent.contentTypeTriG);
     }
 
     private void testCanonicalise(String input, String expected) {
diff --git 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/DEF.java 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/DEF.java
index 55745df837..7e1008674b 100644
--- 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/DEF.java
+++ 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/DEF.java
@@ -67,7 +67,7 @@ public class DEF
     public static final AcceptList jsonOfferDefault()         { return 
AcceptList.create(contentTypeJSON); }
 
     public static final AcceptList constructOfferDefault()    { return 
AcceptList.create(contentTypeTurtle,
-                                                                               
          contentTypeTurtleAlt1,
+                                                                               
          contentTypeTurtleAlt,
                                                                                
          contentTypeNTriples,
                                                                                
          contentTypeNTriplesAlt,
                                                                                
          contentTypeRDFXML,
@@ -76,15 +76,12 @@ public class DEF
                                                                                
          contentTypeJSONLD,
                                                                                
          contentTypeRDFJSON,
                                                                                
          contentTypeRDFThrift,
-
                                                                                
          contentTypeTriG,
-                                                                               
          contentTypeTriGAlt1,
-                                                                               
          contentTypeNQuads,
-                                                                               
          contentTypeNQuadsAlt1
+                                                                               
          contentTypeNQuads
                                                                                
         ); }
 
     public static final AcceptList rdfOfferDefault()          { return 
AcceptList.create(contentTypeTurtle,
-                                                                               
          contentTypeTurtleAlt1,
+                                                                               
          contentTypeTurtleAlt,
                                                                                
          contentTypeNTriples,
                                                                                
          contentTypeNTriplesAlt,
                                                                                
          contentTypeRDFXML,
@@ -96,10 +93,8 @@ public class DEF
                                                                                
         ); }
 
     public static final AcceptList quadsOfferDefault()        { return 
AcceptList.create(contentTypeTriG,
-                                                                               
          contentTypeTriGAlt1,
                                                                                
          contentTypeJSONLD,
                                                                                
          contentTypeNQuads,
-                                                                               
          contentTypeNQuadsAlt1,
                                                                                
          contentTypeTriX,
                                                                                
          contentTypeTriXxml
                                                                                
         ); }
diff --git 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/CrossOriginFilter.java
 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/CrossOriginFilter.java
index 43776391af..e64e1538ff 100644
--- 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/CrossOriginFilter.java
+++ 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/servlets/CrossOriginFilter.java
@@ -27,7 +27,7 @@
 //  * Remove deprecation of CrossOriginFilter
 //  * Extract of from org.eclipse.jetty.util.StringUtil with the functions to 
make this file portable
 //
-// 
https://github.com/jetty/jetty.project/blob/jetty-12.0.x/jetty-ee10/jetty-ee10-servlets/src/main/java/org/eclipse/jetty/ee10/servlets/CrossOriginFilter.java
+// 
https://github.com/jetty/jetty.project/blob/jetty-12.0.x/jetty-ee11/jetty-ee11-servlets/src/main/java/org/eclipse/jetty/ee11/servlets/CrossOriginFilter.java
 // 
https://github.com/jetty/jetty.project/blob/jetty-12.0.x/jetty-core/jetty-util/src/main/java/org/eclipse/jetty/util/StringUtil.java
 //
 // We elect to use and distribute under the Apache License v2.0.
@@ -140,7 +140,7 @@ import org.slf4j.LoggerFactory;
  *     ...
  *     &lt;filter&gt;
  *         &lt;filter-name&gt;cross-origin&lt;/filter-name&gt;
- *         
&lt;filter-class&gt;org.eclipse.jetty.ee10.servlets.CrossOriginFilter&lt;/filter-class&gt;
+ *         
&lt;filter-class&gt;org.eclipse.jetty.ee11.servlets.CrossOriginFilter&lt;/filter-class&gt;
  *     &lt;/filter&gt;
  *     &lt;filter-mapping&gt;
  *         &lt;filter-name&gt;cross-origin&lt;/filter-name&gt;
diff --git a/jena-fuseki2/jena-fuseki-main/pom.xml 
b/jena-fuseki2/jena-fuseki-main/pom.xml
index 7ef4c01b85..851f71020a 100644
--- a/jena-fuseki2/jena-fuseki-main/pom.xml
+++ b/jena-fuseki2/jena-fuseki-main/pom.xml
@@ -71,13 +71,13 @@
     -->
 
     <dependency>
-      <groupId>org.eclipse.jetty.ee10</groupId>
-      <artifactId>jetty-ee10-servlet</artifactId>
+      <groupId>org.eclipse.jetty.ee11</groupId>
+      <artifactId>jetty-ee11-servlet</artifactId>
     </dependency>
 
     <dependency>
-      <groupId>org.eclipse.jetty.ee10</groupId>
-      <artifactId>jetty-ee10-servlets</artifactId>
+      <groupId>org.eclipse.jetty.ee11</groupId>
+      <artifactId>jetty-ee11-servlets</artifactId>
     </dependency>
 
     <dependency>
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/FusekiServer.java
 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/FusekiServer.java
index 1520b16862..4f5457a60d 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/FusekiServer.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/FusekiServer.java
@@ -68,11 +68,11 @@ import org.apache.jena.sys.JenaSystem;
 import org.apache.jena.system.G;
 import org.apache.jena.system.RDFDataException;
 import org.apache.jena.web.HttpSC;
-import org.eclipse.jetty.ee10.servlet.DefaultServlet;
-import org.eclipse.jetty.ee10.servlet.FilterHolder;
-import org.eclipse.jetty.ee10.servlet.ServletContextHandler;
-import org.eclipse.jetty.ee10.servlet.ServletHolder;
-import org.eclipse.jetty.ee10.servlet.security.ConstraintSecurityHandler;
+import org.eclipse.jetty.ee11.servlet.DefaultServlet;
+import org.eclipse.jetty.ee11.servlet.FilterHolder;
+import org.eclipse.jetty.ee11.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee11.servlet.ServletHolder;
+import org.eclipse.jetty.ee11.servlet.security.ConstraintSecurityHandler;
 import org.eclipse.jetty.security.SecurityHandler;
 import org.eclipse.jetty.security.UserStore;
 import org.eclipse.jetty.server.*;
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettyHttps.java
 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettyHttps.java
index b4cddc236f..e554563016 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettyHttps.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettyHttps.java
@@ -19,7 +19,7 @@
 package org.apache.jena.fuseki.main;
 
 import org.apache.jena.fuseki.main.sys.JettyLib;
-import org.eclipse.jetty.ee10.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee11.servlet.ServletContextHandler;
 import org.eclipse.jetty.http.HttpScheme;
 import org.eclipse.jetty.http.HttpVersion;
 import org.eclipse.jetty.server.*;
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettySecurityLib.java
 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettySecurityLib.java
index 831bd85e0a..677f42edee 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettySecurityLib.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettySecurityLib.java
@@ -25,8 +25,8 @@ import org.apache.jena.atlas.logging.FmtLog;
 import org.apache.jena.atlas.web.AuthScheme;
 import org.apache.jena.fuseki.FusekiConfigException;
 import org.apache.jena.fuseki.main.sys.JettyLib;
-import org.eclipse.jetty.ee10.servlet.security.ConstraintMapping;
-import org.eclipse.jetty.ee10.servlet.security.ConstraintSecurityHandler;
+import org.eclipse.jetty.ee11.servlet.security.ConstraintMapping;
+import org.eclipse.jetty.ee11.servlet.security.ConstraintSecurityHandler;
 import org.eclipse.jetty.security.*;
 import org.eclipse.jetty.security.Constraint.Authorization;
 import org.eclipse.jetty.security.authentication.BasicAuthenticator;
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettyServer.java
 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettyServer.java
index d8d66adfd9..bfff0c50de 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettyServer.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/JettyServer.java
@@ -42,10 +42,10 @@ import 
org.apache.jena.fuseki.server.DataAccessPointRegistry;
 import org.apache.jena.fuseki.server.OperationRegistry;
 import org.apache.jena.fuseki.servlets.ActionBase;
 import org.apache.jena.riot.WebContent;
-import org.eclipse.jetty.ee10.servlet.DefaultServlet;
-import org.eclipse.jetty.ee10.servlet.FilterHolder;
-import org.eclipse.jetty.ee10.servlet.ServletContextHandler;
-import org.eclipse.jetty.ee10.servlet.ServletHolder;
+import org.eclipse.jetty.ee11.servlet.DefaultServlet;
+import org.eclipse.jetty.ee11.servlet.FilterHolder;
+import org.eclipse.jetty.ee11.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee11.servlet.ServletHolder;
 import org.eclipse.jetty.http.MimeTypes;
 import org.eclipse.jetty.security.SecurityHandler;
 import org.eclipse.jetty.server.*;
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/sys/JettyLib.java
 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/sys/JettyLib.java
index 64b2bafbf3..4d171e9edb 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/sys/JettyLib.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/main/sys/JettyLib.java
@@ -22,7 +22,7 @@ import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.jena.riot.WebContent;
-import org.eclipse.jetty.ee10.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee11.servlet.ServletContextHandler;
 import org.eclipse.jetty.http.MimeTypes;
 import org.eclipse.jetty.server.Handler;
 import org.eclipse.jetty.server.HttpConfiguration;
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/mod/shiro/FMod_Shiro.java
 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/mod/shiro/FMod_Shiro.java
index 8746846bad..00a1932ba2 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/mod/shiro/FMod_Shiro.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/main/java/org/apache/jena/fuseki/mod/shiro/FMod_Shiro.java
@@ -37,8 +37,8 @@ import org.apache.jena.fuseki.mgt.FusekiServerCtl;
 import org.apache.jena.rdf.model.Model;
 import org.apache.shiro.lang.io.ResourceUtils;
 import org.apache.shiro.web.servlet.ShiroFilter;
-import org.eclipse.jetty.ee10.servlet.ServletContextHandler;
-import org.eclipse.jetty.ee10.servlet.SessionHandler;
+import org.eclipse.jetty.ee11.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee11.servlet.SessionHandler;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestQuery.java
 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestQuery.java
index f9a8863315..8d4e67585f 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestQuery.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/TestQuery.java
@@ -226,6 +226,7 @@ public class TestQuery extends AbstractFusekiTest {
     public void query_construct_conneg() throws IOException {
         String query = "CONSTRUCT {?s ?p ?o} WHERE {?s ?p ?o}";
         for (MediaType type : rdfOfferTest.entries()) {
+            // Includes text/plain - the old MIME type for N-triples
 
             String contentType = type.toHeaderString();
             try (QueryExecutionHTTP qExec =
@@ -237,11 +238,17 @@ public class TestQuery extends AbstractFusekiTest {
                 Iterator<Triple> iter = qExec.execConstructTriples();
                 assertTrue(iter.hasNext());
                 String x = qExec.getHttpResponseContentType();
+                x = removeHttpParameters(x);
                 assertEquals(contentType, x);
             }
         }
     }
 
+    /** Remove any parameters e.g. charset=, version= profile= etc*/
+    private String removeHttpParameters(String x) {
+        return x.replaceAll(";.*$", "");
+    }
+
     @Test
     public void query_construct_quad_conneg() throws IOException {
         String queryString = "CONSTRUCT { GRAPH ?g {?s ?p ?o} } WHERE { GRAPH 
?g {?s ?p ?o}}";
@@ -278,6 +285,7 @@ public class TestQuery extends AbstractFusekiTest {
             try ( qExec ) {
                 Graph graph = qExec.describe();
                 String x = qExec.getHttpResponseContentType();
+                x = removeHttpParameters(x);
                 assertEquals(contentType, x);
                 assertFalse(graph.isEmpty());
             }
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/access/TestSecurityBuilderSetup.java
 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/access/TestSecurityBuilderSetup.java
index 4f806681e5..99e45fe9fc 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/access/TestSecurityBuilderSetup.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/access/TestSecurityBuilderSetup.java
@@ -43,7 +43,7 @@ import org.apache.jena.rdfconnection.LibSec;
 import org.apache.jena.sparql.core.DatasetGraphFactory;
 import org.apache.jena.web.AuthSetup;
 import org.apache.jena.web.HttpSC;
-import org.eclipse.jetty.ee10.servlet.security.ConstraintSecurityHandler;
+import org.eclipse.jetty.ee11.servlet.security.ConstraintSecurityHandler;
 import org.eclipse.jetty.security.UserStore;
 
 /**
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/access/TestSecurityFilterFuseki.java
 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/access/TestSecurityFilterFuseki.java
index 40fb445dbb..9a62998f0d 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/access/TestSecurityFilterFuseki.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/access/TestSecurityFilterFuseki.java
@@ -55,7 +55,7 @@ import org.apache.jena.sparql.engine.http.QueryExceptionHTTP;
 import org.apache.jena.system.G;
 import org.apache.jena.tdb1.TDB1Factory;
 import org.apache.jena.tdb2.DatabaseMgr;
-import org.eclipse.jetty.ee10.servlet.security.ConstraintSecurityHandler;
+import org.eclipse.jetty.ee11.servlet.security.ConstraintSecurityHandler;
 import org.eclipse.jetty.security.UserStore;
 import org.eclipse.jetty.util.security.Credential;
 import org.eclipse.jetty.util.security.Password;
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFusekiMain_1_Servlet_AddFilter.java
 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFusekiMain_1_Servlet_AddFilter.java
index 8bf2d90741..1953bd8572 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFusekiMain_1_Servlet_AddFilter.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFusekiMain_1_Servlet_AddFilter.java
@@ -31,9 +31,9 @@ import org.apache.jena.fuseki.servlets.FusekiFilter;
 import org.apache.jena.fuseki.system.FusekiLogging;
 import org.apache.jena.rdfconnection.RDFConnection;
 import org.apache.jena.sparql.core.DatasetGraphFactory;
-import org.eclipse.jetty.ee10.servlet.FilterHolder;
-import org.eclipse.jetty.ee10.servlet.ServletContextHandler;
-import org.eclipse.jetty.ee10.servlet.ServletHandler;
+import org.eclipse.jetty.ee11.servlet.FilterHolder;
+import org.eclipse.jetty.ee11.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee11.servlet.ServletHandler;
 import org.eclipse.jetty.security.SecurityHandler;
 import org.eclipse.jetty.security.UserStore;
 import org.eclipse.jetty.server.Handler;
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFusekiMain_2_AddShiro.java
 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFusekiMain_2_AddShiro.java
index 31b9404eb6..54808d1a6b 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFusekiMain_2_AddShiro.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFusekiMain_2_AddShiro.java
@@ -27,10 +27,10 @@ import jakarta.servlet.DispatcherType;
 import org.apache.jena.fuseki.main.FusekiServer;
 import org.apache.shiro.web.env.EnvironmentLoaderListener;
 import org.apache.shiro.web.servlet.ShiroFilter;
-import org.eclipse.jetty.ee10.servlet.FilterHolder;
-import org.eclipse.jetty.ee10.servlet.FilterMapping;
-import org.eclipse.jetty.ee10.servlet.ServletContextHandler;
-import org.eclipse.jetty.ee10.servlet.ServletHandler;
+import org.eclipse.jetty.ee11.servlet.FilterHolder;
+import org.eclipse.jetty.ee11.servlet.FilterMapping;
+import org.eclipse.jetty.ee11.servlet.ServletContextHandler;
+import org.eclipse.jetty.ee11.servlet.ServletHandler;
 import org.eclipse.jetty.server.Server;
 import org.eclipse.jetty.session.DefaultSessionIdManager;
 import org.eclipse.jetty.session.SessionHandler;
diff --git 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFuseki_06_DataAccessCtl.java
 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFuseki_06_DataAccessCtl.java
index 9cffa65c01..19e19e4066 100644
--- 
a/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFuseki_06_DataAccessCtl.java
+++ 
b/jena-fuseki2/jena-fuseki-main/src/test/java/org/apache/jena/fuseki/main/examples/ExFuseki_06_DataAccessCtl.java
@@ -46,7 +46,7 @@ import org.apache.jena.sparql.core.Quad;
 import org.apache.jena.sparql.sse.SSE;
 import org.apache.jena.system.Txn;
 import org.apache.jena.tdb2.DatabaseMgr;
-import org.eclipse.jetty.ee10.servlet.security.ConstraintSecurityHandler;
+import org.eclipse.jetty.ee11.servlet.security.ConstraintSecurityHandler;
 import org.eclipse.jetty.security.UserStore;
 import org.eclipse.jetty.util.security.Credential;
 import org.eclipse.jetty.util.security.Password;
diff --git a/pom.xml b/pom.xml
index 1f83f76e44..69fa6c32e4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -570,8 +570,8 @@
       </dependency>
 
       <dependency>
-        <groupId>org.eclipse.jetty.ee10</groupId>
-        <artifactId>jetty-ee10-bom</artifactId>
+        <groupId>org.eclipse.jetty.ee11</groupId>
+        <artifactId>jetty-ee11-bom</artifactId>
         <version>${ver.jetty}</version>
         <scope>import</scope>
         <type>pom</type>

Reply via email to