Add timeout async request handling to OSIV components

This change adds async web request timeout handling to OSIV filters
and interceptors to ensure the session or entity manager is released.

Issue: SPR-10874
Backported further GenericTypeResolver tests

Issue: SPR-11052
Avoid unnecessary char[] allocation in NamedParameterUtils

Issue: SPR-11042
(cherry picked from commit 1dc7ff8)
Javadoc polishing
Use non-lenient constructor resolution mode for @Bean methods

Since @Bean methods are never used with externally specified constructor argument values but rather just with autowiring, the non-lenient constructor resolution mode is appropriate in case of an overloaded @Bean method, not performing any type difference weight checks. This change includes a refinement of Spring's existing non-lenient constructor resolution (which needs to be explicitly turned on and is therefore not well tested), narrowing the conditions for the ambiguity check (only in case of the same number of arguments and not for overridden methods).

Issue: SPR-10988
(cherry picked from commit b093b84)
Polishing (selectively backported from recent 4.0 commits)
@Bean method metadata is always being picked from the most concrete subclass

As a side effect, @Bean overrides and overloads work with 'allowBeanDefinitionOverriding'=false as well now.

Issue: SPR-10992
Polishing (along with SPR-10992)
Only retrieve the FlashMapManager if a non-empty output FlashMap has been found

Issue: SPR-10937
(cherry picked from commit 4ac6801)
Perform setParent's Environment merging for ClassPathXmlApplicationContext etc constructors with parent argument as well

Issue: SPR-11068
(cherry picked from commit c5fcf19)
Disable ext entities in SourceHttpMessageConverter

This change disables the processing of external entities in
SourceHttpMessageConverter by default and provides an option to enable
it if required.
Fix exception mock request builder

Issue: SPR-11043
Return 415 on bad request body content-type

Issue: SPR-10982
JndiObjectFactoryBean converts a "defaultObject" value to the expected type if necessary

Issue: SPR-11039
(cherry picked from commit 0aedd81)
Added test for placeholder in alias definition

Issue: SPR-11018
(cherry picked from commit e9a24da)
Update changelog
Next development version
Detect cache hit with multiple @Cachables

Fix CacheAspectSupport to consider a cache hit from any of the multiple
@Cachables that may have been specified using the @Caching annotation.

Prior to this commit the following scenario would never produce a hit:

    @Caching(cacheable = {
            @Cacheable(value = "c1", unless = "#result.size() < 4"),
            @Cacheable(value = "c2", unless = "#result.size() > 3")
     })

Issue: SPR-11124
Optimized ImportAware processing to avoid re-reading class files
(cherry picked from commit 519f78c)
Synchronized cache creation on CacheManager

Issue: SPR-11132
(cherry picked from commit de890fd)