How to apply the PathPatternParser introduced in Spring 5?

Tags: , ,

I want to create a GET request that takes a filepath as a path variable.

As described in the Spring documentation found here, this should be possible by using the following: /resources/{*path}.

I am using Spring Boot 2.1.2 which uses Spring 5.

However when I set up my controller method like this, the request doesn’t match the route. An expected matching path would be for example /resources/some/filepath which should lead the PathVariable “path” to be /some/filepath

  public String content(@PathVariable String path) {
    return null;

I didn’t find any information about any configuration that is needed in order to make use of the new PathPattern. The only other piece of information I found about this new feature is a post at Baeldung ( which doesn’t mention anything about configuration. So I expect that it should work out of the box, but it doesn’t.

I cloned the project mentioned in the Baeldung post. The corresponding unit tests run. When I copy the Controller method and the unit test to my project, it fails. So I expect that it has to do with configuration.

Thank you for any help.


In the Common Application properties in the Spring documentation there’s a property called spring.mvc.pathmatch.matching-strategy, that’s used as “Choice of strategy for matching request paths against registered mappings”.

The default value (up to this date) is ant-path-matcher, and since you want to use PathPattern, you’ll need to write this in the file:


Source: stackoverflow