From 02ee3308faa2bcd4a8d9f18a6e72d709e7bb7b28 Mon Sep 17 00:00:00 2001 From: Joakim Erdfelt Date: Fri, 2 Feb 2024 15:13:22 -0600 Subject: [PATCH] Migrating github.com:jetty-project/embedded-jetty-with-web-resources --- .../README.md | 0 .../pom.xml | 15 ++++++++----- .../java/examples/MetaInfResourceDemo.java | 22 ++++++++++--------- .../resources/META-INF/resources/MYREADME.txt | 0 .../examples/MetaInfResourceDemoTest.java | 13 ++++++----- embedded/pom.xml | 2 +- 6 files changed, 30 insertions(+), 22 deletions(-) rename embedded/{metainf-resources => ee10-metainf-resources}/README.md (100%) rename embedded/{metainf-resources => ee10-metainf-resources}/pom.xml (71%) rename embedded/{metainf-resources => ee10-metainf-resources}/src/main/java/examples/MetaInfResourceDemo.java (72%) rename embedded/{metainf-resources => ee10-metainf-resources}/src/main/resources/META-INF/resources/MYREADME.txt (100%) rename embedded/{metainf-resources => ee10-metainf-resources}/src/test/java/examples/MetaInfResourceDemoTest.java (91%) diff --git a/embedded/metainf-resources/README.md b/embedded/ee10-metainf-resources/README.md similarity index 100% rename from embedded/metainf-resources/README.md rename to embedded/ee10-metainf-resources/README.md diff --git a/embedded/metainf-resources/pom.xml b/embedded/ee10-metainf-resources/pom.xml similarity index 71% rename from embedded/metainf-resources/pom.xml rename to embedded/ee10-metainf-resources/pom.xml index 3f89c39..30a2314 100644 --- a/embedded/metainf-resources/pom.xml +++ b/embedded/ee10-metainf-resources/pom.xml @@ -4,12 +4,12 @@ org.eclipse.jetty.examples.embedded jetty-embedded-examples - 9.4.x + 12.0.x - metainf-resources - 9.4.x + ee10-metainf-resources + 12.0.x jar - Jetty Examples :: Jetty 9.4.x :: Embedded :: Integrating jars with META-INF/resources without WebAppContext + Jetty Examples :: Jetty 12.0.x :: Embedded :: EE10 Integrating jars with META-INF/resources without WebAppContext @@ -19,7 +19,12 @@ org.eclipse.jetty - jetty-servlet + jetty-slf4j-impl + ${jetty.version} + + + org.eclipse.jetty.ee10 + jetty-ee10-servlet ${jetty.version} diff --git a/embedded/metainf-resources/src/main/java/examples/MetaInfResourceDemo.java b/embedded/ee10-metainf-resources/src/main/java/examples/MetaInfResourceDemo.java similarity index 72% rename from embedded/metainf-resources/src/main/java/examples/MetaInfResourceDemo.java rename to embedded/ee10-metainf-resources/src/main/java/examples/MetaInfResourceDemo.java index 5e1346a..f215b1b 100644 --- a/embedded/metainf-resources/src/main/java/examples/MetaInfResourceDemo.java +++ b/embedded/ee10-metainf-resources/src/main/java/examples/MetaInfResourceDemo.java @@ -18,14 +18,14 @@ import java.util.Collections; import java.util.List; +import org.eclipse.jetty.ee10.servlet.DefaultServlet; +import org.eclipse.jetty.ee10.servlet.ServletContextHandler; +import org.eclipse.jetty.ee10.servlet.ServletHolder; +import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.Server; import org.eclipse.jetty.server.handler.DefaultHandler; -import org.eclipse.jetty.server.handler.HandlerList; -import org.eclipse.jetty.servlet.DefaultServlet; -import org.eclipse.jetty.servlet.ServletContextHandler; -import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jetty.util.resource.Resource; -import org.eclipse.jetty.util.resource.ResourceCollection; +import org.eclipse.jetty.util.resource.ResourceFactory; public class MetaInfResourceDemo { @@ -40,12 +40,14 @@ public static Server newServer(int port) throws Exception { Server server = new Server(port); - HandlerList handlers = new HandlerList(); + Handler.Sequence handlers = new Handler.Sequence(); ServletContextHandler context = new ServletContextHandler(); context.setContextPath("/"); - Resource manifestResources = findManifestResources(MetaInfResourceDemo.class.getClassLoader()); + ResourceFactory resourceFactory = ResourceFactory.of(context); + + Resource manifestResources = findManifestResources(resourceFactory, MetaInfResourceDemo.class.getClassLoader()); context.setBaseResource(manifestResources); // Add something to serve the static files @@ -60,15 +62,15 @@ public static Server newServer(int port) throws Exception return server; } - private static Resource findManifestResources(ClassLoader classLoader) throws IOException + private static Resource findManifestResources(ResourceFactory resourceFactory, ClassLoader classLoader) throws IOException { List hits = Collections.list(classLoader.getResources("META-INF/resources")); int size = hits.size(); Resource[] resources = new Resource[hits.size()]; for (int i = 0; i < size; i++) { - resources[i] = Resource.newResource(hits.get(i)); + resources[i] = resourceFactory.newResource(hits.get(i)); } - return new ResourceCollection(resources); + return ResourceFactory.combine(resources); } } diff --git a/embedded/metainf-resources/src/main/resources/META-INF/resources/MYREADME.txt b/embedded/ee10-metainf-resources/src/main/resources/META-INF/resources/MYREADME.txt similarity index 100% rename from embedded/metainf-resources/src/main/resources/META-INF/resources/MYREADME.txt rename to embedded/ee10-metainf-resources/src/main/resources/META-INF/resources/MYREADME.txt diff --git a/embedded/metainf-resources/src/test/java/examples/MetaInfResourceDemoTest.java b/embedded/ee10-metainf-resources/src/test/java/examples/MetaInfResourceDemoTest.java similarity index 91% rename from embedded/metainf-resources/src/test/java/examples/MetaInfResourceDemoTest.java rename to embedded/ee10-metainf-resources/src/test/java/examples/MetaInfResourceDemoTest.java index 55fc5f9..d55a08d 100644 --- a/embedded/metainf-resources/src/test/java/examples/MetaInfResourceDemoTest.java +++ b/embedded/ee10-metainf-resources/src/test/java/examples/MetaInfResourceDemoTest.java @@ -23,6 +23,7 @@ import org.eclipse.jetty.server.Server; import org.eclipse.jetty.util.component.LifeCycle; import org.eclipse.jetty.util.resource.Resource; +import org.eclipse.jetty.util.resource.ResourceFactory; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; @@ -81,11 +82,12 @@ public void testGetBootStrapResource() throws Exception */ private String findMetaInfResourceFile(ClassLoader classLoader, String prefix, String regex) throws IOException { - List hits = Collections.list(classLoader.getResources("META-INF/resources" + prefix)); - for (URL hit : hits) + try (ResourceFactory.Closeable resourceFactory = ResourceFactory.closeable()) { - try (Resource res = Resource.newResource(hit)) + List hits = Collections.list(classLoader.getResources("META-INF/resources" + prefix)); + for (URL hit : hits) { + Resource res = resourceFactory.newResource(hit); Resource match = findNestedResource(res, regex); if (match != null) { @@ -110,10 +112,9 @@ private String findMetaInfResourceFile(ClassLoader classLoader, String prefix, S private Resource findNestedResource(Resource res, String regex) throws IOException { - for (String content : res.list()) + for (Resource subresource : res.list()) { - Resource subresource = res.addPath(content); - if (content.matches(regex)) + if (subresource.getFileName().matches(regex)) return subresource; if (subresource.isDirectory()) { diff --git a/embedded/pom.xml b/embedded/pom.xml index a95c568..d89432b 100644 --- a/embedded/pom.xml +++ b/embedded/pom.xml @@ -20,6 +20,7 @@ deploying ee8-webapp-context ee10-file-server + ee10-metainf-resources ee10-servlet-config ee10-servlet-security ee10-webapp-context @@ -31,7 +32,6 @@ form-post http-config jndi - metainf-resources redirect requestlog rewrite