From 9a9d8fb6ea74d1f449c2cd89c9caf9c9b0be8071 Mon Sep 17 00:00:00 2001 From: Lachlan Roberts Date: Mon, 20 Nov 2023 10:09:26 +1100 Subject: [PATCH] throw IllegalArgumentException if container resource is not readable Signed-off-by: Lachlan Roberts --- .../main/java/org/eclipse/jetty/ee10/webapp/MetaData.java | 5 ++++- .../src/main/java/org/eclipse/jetty/ee9/webapp/MetaData.java | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/jetty-ee10/jetty-ee10-webapp/src/main/java/org/eclipse/jetty/ee10/webapp/MetaData.java b/jetty-ee10/jetty-ee10-webapp/src/main/java/org/eclipse/jetty/ee10/webapp/MetaData.java index b36cb972d24..af49251472e 100644 --- a/jetty-ee10/jetty-ee10-webapp/src/main/java/org/eclipse/jetty/ee10/webapp/MetaData.java +++ b/jetty-ee10/jetty-ee10-webapp/src/main/java/org/eclipse/jetty/ee10/webapp/MetaData.java @@ -25,6 +25,7 @@ import java.util.Objects; import jakarta.servlet.ServletContext; import org.eclipse.jetty.util.URIUtil; import org.eclipse.jetty.util.resource.Resource; +import org.eclipse.jetty.util.resource.Resources; import org.eclipse.jetty.util.thread.AutoLock; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -714,7 +715,9 @@ public class MetaData public void addContainerResource(Resource jar) { - Objects.requireNonNull(jar); + if (!Resources.isReadable(jar)) + throw new IllegalArgumentException("Resource is not readable: " + jar); + if (!_orderedContainerResources.contains(jar)) _orderedContainerResources.add(jar); else diff --git a/jetty-ee9/jetty-ee9-webapp/src/main/java/org/eclipse/jetty/ee9/webapp/MetaData.java b/jetty-ee9/jetty-ee9-webapp/src/main/java/org/eclipse/jetty/ee9/webapp/MetaData.java index b74d7bb38e5..56bc6d01a62 100644 --- a/jetty-ee9/jetty-ee9-webapp/src/main/java/org/eclipse/jetty/ee9/webapp/MetaData.java +++ b/jetty-ee9/jetty-ee9-webapp/src/main/java/org/eclipse/jetty/ee9/webapp/MetaData.java @@ -25,6 +25,7 @@ import java.util.Objects; import jakarta.servlet.ServletContext; import org.eclipse.jetty.util.URIUtil; import org.eclipse.jetty.util.resource.Resource; +import org.eclipse.jetty.util.resource.Resources; import org.eclipse.jetty.util.thread.AutoLock; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -714,7 +715,9 @@ public class MetaData public void addContainerResource(Resource jar) { - Objects.requireNonNull(jar); + if (!Resources.isReadable(jar)) + throw new IllegalArgumentException("Resource is not readable: " + jar); + if (!_orderedContainerResources.contains(jar)) _orderedContainerResources.add(jar); else