See also the upgrade instructions.
⭐ New Features
- Deprecate CachingConfigurerSupport and AsyncConfigurerSupport #27813
- Deprecate StringUtils::trimWhitespace #27769
- Enforce Future or void return declaration for each asynchronously executed method (e.g. with class-level
@Async
) #27734 - Avoid unescape when CONNECT and CONNECTED frames #27722
- Support SQUARE brackets [] around NAMED parameter #27716
- Change StringUtils trimWhitespace to String.strip() #27703
- Retrieve MethodMetadata for all user-declared methods in the order of declaration #27701
- Refactor HttpMethod from enum to class #27697
- Use parseInt without substring method #27680
- Consistently replace String encoding names with StandardCharset arguments #27664
- Use 'toString(Charset)' instead of 'toString(String)' for encodings #27646
- Add method to ClientResponse that returns Mono terminating with createException #27637
- Create immutable MultiValueMap wrapper #27608
- Revisit MediaType ordering #27580
- Optimize header removal in ForwardedHeaderFilter #27466
- Change default driver in XStreamMarshaller from XppDriver to DomDriver #27464
- Retain support for legacy JSR-250 javax.annotation.PostConstruct/PreDestroy and JSR-330 javax.inject.Inject in addition to Jakarta EE 9 annotations #27444
- change string http header to enum #27356
- Allow BeanUtils#instantiateClass inlining with native #27072
- Remove support for deprecated Java SecurityManager #26901
- CommonAnnotationBeanPostProcessor jakarta.annotation-api:2.0.0 support (
@PostConstruct
/Predestroy) #26185 @Transactional
does not work on package protected methods of CGLib proxies #25582- Add support for explicit generic type in PayloadApplicationEvent #24599
- Add Kotlin extensions for Cache and CacheManager #23927
- JDK 11 HttpClient integration with WebClient #23432
@RequestMapping
without@Controller
registered as handler [SPR-17622] #22154- Upgrade Spring Context Support to Jakarta EE's com.sun.mail:jakarta.mail and com.sun.activation:jakarta.activation [SPR-17561] #22093
- Enable support for custom vnd types in messaging MappingJackson2MessageConverter [SPR-15712] #20269
- Add support for instant in
@DateTimeFormat
#19846 - Support YearMonth and MonthDay with the
@DateTimeFormat
annotation #1215
📔 Documentation
- Update javadoc and reference docs for consistent version and package references to the Jakarta EE 9 APIs #27689
- Use default stylesheet for generated Javadoc HTML #27496
🔨 Dependency Upgrades
- Support for Jakarta EE 9 (annotations and interfaces in jakarta.* namespace) #25354
- Support for Jetty 11 #27424
- Upgrade to AspectJ 1.9.8 for official Java 17 support #27537
- Upgrade to Kotlin 1.6.10 #27413
❤️ Contributors
We'd like to thank all the contributors who worked on this release!