Migrate to Spring Boot 3 and JakartaEE APIs
This MR migrates all Spring-based projects to Spring Boot 3.0. For the gateway, Spring Cloud has been upgraded to the 2022.0 release train. A release candidate of the dependencies is used.
- Switched to jakarta.* namespace (from javax.*) for JEE.
- Switched to JakartaEE variant of Pac4j's JEE dependency.
- Adjusted alias forwarding logic for change in
AntPathMatcher
sextractPathWithinPattern
implementation which can no longer returnnull
. - Adjusted
ControllerExceptionHandler
to signature change ofResponseEntityExceptionHandler
shandleExceptionInternal
method. - Removed
ConstructorBinding
annotation forConfigurationProperties
contructors. - The new
securityMatchers
andrequestMatchers
methods are now used ofHttpSecurity
configuration. TheantMatcher
method was removed as of Spring Security 6.0. - Check for referential instead of structural equality when comparing
HttpMethod
.
Breaking API change:
- Trailing slashes are no longer accepted for URI's which are actually defined without one.
Removed feature:
- The CAS authentication module has been removed for Spring Security 6.0 because there is not yet a CAS release with support for the JakartaEE Servlet API.
Closes: #173 (closed)
See: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.0.0-M4-Release-Notes#spring-mvc-and-webflux-url-matching-changes
See: https://github.com/spring-projects/spring-security/pull/12137
Edited by Daniel Gerhardt