⭐ New Features
- SQL Server error code 209 should map to BadSqlGrammarException [SPR-9946] #14579
- Extend conditional conversion support [SPR-9928] #14561
- Provide a way to handle timeouts for Servlet 3 async requests [SPR-9914] #14547
- Allow setting WSDL document as a Resource on LocalJaxWsServiceFactory [SPR-9909] #14542
- Allow usage of injection annotations (
@Autowired
,@Value
) as meta-annotations [SPR-9890] #14523 - Allow configurable await time in TestCallableInterceptor in test mvc [SPR-9875] #14508
- Allow SpEL reserved words in type package names [SPR-9862] #14495
- Add first class support for testing Spring MVC applications [SPR-9859] #14492
- ContentNegotiatingViewResolver does not support wildcards in contentType [SPR-9807] #14440
- Develop ConcurrentReferenceHashMap [SPR-9796] #14429
- List
@PathVariable
not converted correctly in@Controller
[SPR-9765] #14399 - Support for increment (++) operator in SpEL [SPR-9751] #14385
- TypeDescriptor getAnnotation method should use generics [SPR-9744] #14378
- Implement support of Jackson2 for JacksonObjectMapperBeanFactory [SPR-9739] #14373
- Implement HttpMessageConverter that can use a ConversionService to convert String content to some Object type [SPR-9738] #14372
- Make locales in MockHttpServletRequest configurable [SPR-9724] #14358
- Support flexible formatting for resolved message codes [SPR-9707] #14341
- Support conversion from Enum Interface [SPR-9692] #14326
- Provide runtime access to Spring container and bean graph metadata [SPR-9662] #14296
- MediaType's include method does not check for generalization when using a format extension/suffix [SPR-9635] #14269
- Allow PropertyResolver implementations to ignore unresolvable ${placeholders} [SPR-9569] #14203
- Bypass conversion when possible [SPR-9566] #14200
- Upgrade commons-httpclient from version 4.1 to version 4.2 [SPR-9475] #14110
- Add more details in ResourceAccessException message thrown by doExecute method of RestTemplate [SPR-9325] #13963
- Cache and late resolve annotations on bean properties to improve performance [SPR-9166] #13804
- Make the ConfigurableWebBindingInitializer easy to customize in WebMvcConfigurationSupport [SPR-8984] #13624
- Introduce
@EnableMBeanExport
equivalent to context:mbean-export [SPR-8943] #13583 - Use concurrent cache to improve performance of GenericTypeResolver [SPR-8701] #13343
- Allow Customization of Object Name Attributes [SPR-8244] #12892
- MockHttpRequest to support ClientRequestInterceptor testing [SPR-7995] #12650
- Add first class support for client-side REST tests [SPR-7951] #12606
- MappingJacksonHttpMessageConverter default media type should include *+json [SPR-7905] #12560
- Support for custom global Joda DateTimeFormatters [SPR-7121] #11781
- Apache HttpClient 4.1 pooled coonection manager support in Spring Web [SPR-6940] #11605
- Support DateTimeFormat annotation without Joda [SPR-6508] #11174
- Support loading WebApplicationContexts with the TestContext Framework [SPR-5243] #9917
- Throw AopInvocationException on advice returning null for primitive type [SPR-4675] #9352
- Provide support for session/request scoped beans for integration testing [SPR-4588] #9265
🪲 Bug Fixes
- AbstractEnvironment addActiveProfile ignores profiles activated with properties [SPR-9944] #14577
- HttpMessageNotReadableException when
@RequestBody
(required=false) [SPR-9942] #14575 - Spring test module shouldn't pull in hamcrest-all as hard dependency [SPR-9940] #14573
- Avoid NullPointerException in ObjectToObjectConverter [SPR-9933] #14566
- OncePerRequestFilter executes again on errors [SPR-9895] #14528
- PathExtensionContentNegotiationStrategy depends on Servlet 3 specific method [SPR-9826] #14459
- RequestMethodsRequestCondition fails on unsupported method types [SPR-9815] #14448
- Delete CopyOfRequestMappingHandlerMapping [SPR-9814] #14447
- JibxMarshaller deletes comments when Result is an XMLEventWriter [SPR-9768] #14402
- Initialize ServletContext and ServletConfig property sources eagerly in FrameworkServlet [SPR-9610] #14244
- Resolve Collection element types during conversion [SPR-9257] #13895
@Entity
objects are not enhanced by the load time weaver in certain situations [SPR-8523] #13167