Update `SslAutoConfiguration` so that the used resource loader prefers
file based resolution when paths are specified without a prefix. This
restores the behavior found in Spring Boot 3.3.
The `ApplicationResourceLoader` has been updated with a new `get` method
that accepts a `preferFileResolution` parameter. Unfortunately, we can't
directly influence the resource returned by the delegate
`ResourceLoader` since we can't override `getResourceByPath(...)`.
Instead we check if the returned type was likely to have been created
by a call to that method. If so, we change it to a `FileSystemResource`.
This approach should hopefully work with `DefaultResourceLoader` and
subclasses.
Fixes gh-43274
@ -120,8 +122,25 @@ public class ApplicationResourceLoader extends DefaultResourceLoader {
@@ -120,8 +122,25 @@ public class ApplicationResourceLoader extends DefaultResourceLoader {
@ -135,9 +154,15 @@ public class ApplicationResourceLoader extends DefaultResourceLoader {
@@ -135,9 +154,15 @@ public class ApplicationResourceLoader extends DefaultResourceLoader {
@ -185,13 +210,30 @@ public class ApplicationResourceLoader extends DefaultResourceLoader {
@@ -185,13 +210,30 @@ public class ApplicationResourceLoader extends DefaultResourceLoader {
@ -204,7 +246,20 @@ public class ApplicationResourceLoader extends DefaultResourceLoader {
@@ -204,7 +246,20 @@ public class ApplicationResourceLoader extends DefaultResourceLoader {