Matching URLs with a trailing slash was deprecated in 6.0 in favor of early handling via proxy or Filter
like UrlRewriteFilter, see #28552 for details. The continued feedback on the issue, however, makes it clear we need to go further and provide built-in support.
This can be a Filter
ordered as early as possible, e.g. ahead of security, that handles URLs with a trailing slash. One option is a permanent redirect, and another is to rewrite the request like UrlRewriteFilter
. This can be configurable by URL pattern or for all requests. Another suggestion from https://github.com/spring-projects/spring-framework/issues/28552#issuecomment-1469740759 is to log URLs with a trailing slash in order to discover and phase them out.
Comment From: thammaratNak1
why does'n support trailing slash by default same as version before ?
Comment From: SebasAnasco1517
Hi, there any news for this Filter built-in solution? On my company we migrated to SpringBoot 3 and found the 404 problem from the deprecation of trailing slash.
Have a good one, God bless you.
Comment From: ericdriggs
@SebasAnasco1517 Workaround is setUseTrailingSlashMatch. I'm using it in several projects
https://github.com/spring-projects/spring-framework/issues/28552#issuecomment-1746252506
Comment From: rstoyanchev
I've added UrlHandlerFilter
in edb6bb717d9ea10429a9e5c1fba285cd7761d5a1 that will be in 6.2.0 snapshots shortly, and in the M2 release tomorrow. Early feedback towards further 6.2 milestones would be much appreciated!
There is no WebFlux equivalent yet, but I've created #32830 for M3 to keep track of that.
Comment From: kundan621
@rstoyanchev can you please also tell how to use this? Do you have any documentation or Blog post for this?
Comment From: bclozel
@kundan621 we've added some documentation for this. See https://docs.spring.io/spring-framework/reference/6.2-SNAPSHOT/web/webmvc/filters.html#filters.url-handler