Skip to content

FileSystemResource location does not end with slash for RouterFunction check #34509

Closed
@ecabrera78

Description

@ecabrera78

I migrated an application from spring-boot 3.3.6 to 3.4.2. We have below code to create a static resource locator:

@Bean
RouterFunction staticResourceLocator() {
  return RouterFunctions.resources("/**", new FileSystemResource("/opt/cfg/static/"));
}

After the migration this code is throwing an exception:
Failed to instantiate [org.springframewok.we.reactive.function.server.RouterFunction]: Factory method 'stticResourceLocator' threw exception with message: Resource location does not end with slash: /opt/cfg/static

I found that when FileSystemResource is created there is a call to StringUtils.cleanPath(path) where the last slash is removed from the original path.

is there another way to create the FileSystemResource and preserve the last slash?

Metadata

Metadata

Assignees

Labels

in: webIssues in web modules (web, webmvc, webflux, websocket)type: regressionA bug that is also a regression

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions