From 5d80d75051f395c17f6b9367e267d458585b336d Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Sat, 31 Aug 2024 12:00:14 +0200 Subject: [PATCH] Follow symlinks during root path traversal Closes gh-33424 --- .../core/io/support/PathMatchingResourcePatternResolver.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/spring-core/src/main/java/org/springframework/core/io/support/PathMatchingResourcePatternResolver.java b/spring-core/src/main/java/org/springframework/core/io/support/PathMatchingResourcePatternResolver.java index 0210324558..2f68ab3429 100644 --- a/spring-core/src/main/java/org/springframework/core/io/support/PathMatchingResourcePatternResolver.java +++ b/spring-core/src/main/java/org/springframework/core/io/support/PathMatchingResourcePatternResolver.java @@ -34,6 +34,7 @@ import java.net.URLClassLoader; import java.net.URLConnection; import java.nio.file.FileSystemNotFoundException; import java.nio.file.FileSystems; +import java.nio.file.FileVisitOption; import java.nio.file.Files; import java.nio.file.Path; import java.util.Collections; @@ -871,7 +872,7 @@ public class PathMatchingResourcePatternResolver implements ResourcePatternResol .formatted(rootPath.toAbsolutePath(), subPattern)); } - try (Stream files = Files.walk(rootPath)) { + try (Stream files = Files.walk(rootPath, FileVisitOption.FOLLOW_LINKS)) { files.filter(isMatchingFile).sorted().map(FileSystemResource::new).forEach(result::add); } catch (Exception ex) {