Release Notes - Spring Framework - Version 4.0.4 - HTML format


  • [SPR-11623] - Adding a ChannelInterceptor suppresses default executor settings in the XML namespace
  • [SPR-11626] - Servlet mocks are not reinjected into test instance between TestNG test methods
  • [SPR-11637] - @PropertySource locations are being dropped in ConfigurationClassParser processPropertySource
  • [SPR-11644] - ResourceHttpRequestHandler not closing Resource's input stream
  • [SPR-11647] - Regression: @ComponentScan fails for AnnotationConfigWebApplicationContext
  • [SPR-11648] - SUBSCRIBE response message should match the original message destination
  • [SPR-11649] - AnnotationReadingVisitorUtils.getMergedAnnotationAttributes() overrides values it should not
  • [SPR-11653] - NPE in AbstractMessageSendingTemplate when headers are null and converter returns null
  • [SPR-11657] - DefaultSubscriptionRegistry does not handle subscriptions in Ant-style
  • [SPR-11676] - UrlResource.exists() does not properly detect JBoss vfszip resources
  • [SPR-11678] - Form select tag "multiple" attribute not recognized
  • [SPR-11692] - @CachePut evaluates incorrectly expressions for the different implementation of the same interface
  • [SPR-11708] - ClassCastException when evaluating the eq/ne operator in the EL
  • [SPR-11710] - AnnotationReadingVisitorUtils.getMergedAnnotationAttributes() mutates the map argument
  • [SPR-11717] - ShallowEtagHeaderFilter setContentLength on include
  • [SPR-11720] - ConcurrentReferenceHashMap doesn't limit upper concurrency level
  • [SPR-11721] - SpringProperties: the ClassLoader might be null, if class is loaded by the bootstrap class loader
  • [SPR-11727] - If-Modified-Since header is parsed as HTTP-date; but IE 10 sends length
  • [SPR-11747] - JRubyScriptUtils fails against JRuby 1.7.12 with NullPointerException in findClassNode
  • [SPR-13358] - Generics and caching causing issues


  • [SPR-11212] - Upgrade AspectJ dependency to 1.8 final and apply latest ASM 5.0.2 patches
  • [SPR-11636] - Upgrade reactor-tcp 1.0.1 to reactor-net 1.1
  • [SPR-11640] - Upgrade JCache dependency to 1.0 final
  • [SPR-11650] - Use unconstrained quotes instead of backticks in the reference manual
  • [SPR-11667] - Incorrect link in documentation
  • [SPR-11672] - [doc] Document message broker related events published
  • [SPR-11679] - Deprecate TestContextManager.getDefaultTestExecutionListenerClasses()
  • [SPR-11682] - Deprecate support for custom, default ContextLoader class name in the TestContext framework
  • [SPR-11703] - Update documentation with example of single ApplicationContext per webapp


  • [SPR-9671] - Overriding bean definition message does not take parent definition into account
  • [SPR-11621] - Update NativeWebSocketSession getters to return basic information required after close
  • [SPR-11634] - Support simultaneous use of classes and locations in @ContextConfiguration
  • [SPR-11635] - XStreamMarshaller forces XPP dependency
  • [SPR-11643] - Optimize performance of escaping in StompEncoder and StompDecoder
  • [SPR-11646] - MarshallingView should avoid temporary byte array when copying to response
  • [SPR-11655] - Improve handling of disconnect events in STOMP broker relay
  • [SPR-11673] - no msg when cannot authorize against external queue
  • [SPR-11687] - Support EOF as statement separator in SQL scripts
  • [SPR-11702] - XStreamMarshaller: Can't parse XML with '_' in the attribute names
  • [SPR-11705] - ShallowEtagHeaderFilter should write body early when HttpServletResponse.sendError() is called
  • [SPR-11712] - Improve Servlet 3 presence check in ServletServerHttpResponse
  • [SPR-11716] - Skip multipart checking so that multipart errors can be handled in an @Controller method using Servlet 3 <error-page>
  • [SPR-11718] - Fix/optimize handling of @Bean method override regression with return type narrowing on JDK 8
  • [SPR-11719] - Metadata reading should never use ASM for java.* and javax.* types (in particular on JDK 8)
  • [SPR-11725] - AbstractAdvisingBeanPostProcessor.isEligible(…) does not consider proxy interfaces
  • [SPR-11737] - AbstractMarshaller should avoid SAXSource workaround when processExternalEntities=true

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.