diff --git a/spring-core/src/main/java/org/springframework/core/io/FileUrlResource.java b/spring-core/src/main/java/org/springframework/core/io/FileUrlResource.java index 973b19a8bf5..f560bd2aef2 100644 --- a/spring-core/src/main/java/org/springframework/core/io/FileUrlResource.java +++ b/spring-core/src/main/java/org/springframework/core/io/FileUrlResource.java @@ -70,6 +70,14 @@ public class FileUrlResource extends UrlResource implements WritableResource { } + @Override + public Resource createRelative(String relativePath) throws MalformedURLException { + if (relativePath.startsWith("/")) { + relativePath = relativePath.substring(1); + } + return new FileUrlResource(new URL(getURL(), relativePath)); + } + @Override public boolean isWritable() { try { diff --git a/spring-core/src/main/java/org/springframework/core/io/UrlResource.java b/spring-core/src/main/java/org/springframework/core/io/UrlResource.java index a4c38d223fc..37373a22d71 100644 --- a/spring-core/src/main/java/org/springframework/core/io/UrlResource.java +++ b/spring-core/src/main/java/org/springframework/core/io/UrlResource.java @@ -183,7 +183,7 @@ public class UrlResource extends AbstractFileResolvingResource { * This implementation returns the underlying URL reference. */ @Override - public URL getURL() throws IOException { + public URL getURL() { return this.url; }