Release Notes - Spring Framework - Version 3.1.3 - HTML format

Bug

  • [SPR-5369] - Property Placeholder Configurer Incorrectly Reports "Circular placeholder reference" Error For Repeated Nested Placeholders
  • [SPR-8946] - If you annotate any parameter in a @InitBinder method, it fails at runtime.
  • [SPR-9017] - Allow SpEL to resolve getter method against object of type Class
  • [SPR-9152] - Jaxb2Marshaller::supports() ignores classes found by packages scanning
  • [SPR-9181] - @Inject Provider or @Autowired ObjectFactory issue with session scoped bean
  • [SPR-9209] - AnnoationMethodHandlerExceptionResolver identifies wrong exception handler
  • [SPR-9243] - Java based configuration - after upgrade to 3.1.1.RELEASE the AOP Proxy session scoped bean is instantiated to find type of bean during dependency resolution
  • [SPR-9284] - Allow MapToMap conversion even without a default constructor
  • [SPR-9285] - CollectionFactory does not chain exceptions
  • [SPR-9303] - Portlet annotation handler mapping does is not working properly because of a flaw in predicate comparison
  • [SPR-9305] - StaxEventContentHandler.setDocumentLocator leaks references
  • [SPR-9378] - ErrorsMethodArgumentResolver fails when model attribute is mentioned in the signature of @ModelAttribute-annotated method
  • [SPR-9414] - Java 7 only - PropertyPathFactoryBean requires a bean setter in version 3.1.1.RELEASE. Works fine under Java 6.
  • [SPR-9498] - CollectionFactory should be aware of MultiValueMap
  • [SPR-9547] - ResourceUtils.useCachesIfNecessary() not correct handle JNLP connections
  • [SPR-9580] - Injecting prototypes into tests using @Resource appears to be broken
  • [SPR-9593] - JdbcTestUtils should not interpret comments as a separate statement
  • [SPR-9603] - RequestMappingInfoHandlerMapping.handleNoMatch throws HttpRequestMethodNotSupportedException incorrectly
  • [SPR-9605] - Wrong compareTo() implementation in Portlet mapping predicates
  • [SPR-9607] - MessageSourceSupport and StaticMessageSource uses invalid caches for MessageFormat
  • [SPR-9608] - org.springframework.core.Constants fail with NPE dispite method documentations say that it accepts null values
  • [SPR-9627] - Regression: scoped beans being cached too aggressively
  • [SPR-9629] - When testing controller mappings using AnnotationMethodHandlerAdapter NPE is thrown
  • [SPR-9630] - Injection of Provider fails for prototype-scoped beans
  • [SPR-9652] - BeanFactoryAnnotationUtils should throw BeansException
  • [SPR-9657] - Flashmap matching logic fails when target params are encoded.
  • [SPR-9741] - Default PersistenceUnit is configured with wrong name, resulting in duplicates & causes RTE.
  • [SPR-9754] - LinkedCaseInsensitiveMap duplicate element with put()
  • [SPR-9756] - Register environment in all bean factories in a hierarchy
  • [SPR-9761] - Remove default profile during environment merge
  • [SPR-9770] - DelegatingDataSource incorrectly implements java.sql.Wrapper
  • [SPR-9781] - ResourceDatabasePopulator incredibly slow on JDK 1.7.0_06 or newer
  • [SPR-9791] - RestTemplate fails to correctly parse some HTTP URI parameters
  • [SPR-9797] - Spring fails to locate jar files defined with jar-file tag in persistence.xml
  • [SPR-9802] - Performance degradation for TransactionInterceptor
  • [SPR-9806] - Autowired properties can remain unset during concurrent instantiation of prototype-beans
  • [SPR-9811] - Fix split package introduced by @EnableSpringConfigured
  • [SPR-9821] - Race Condition in ReschedulingRunnable
  • [SPR-9832] - Erroneous "0" returned where empty string expected in call through the RestTemplate
  • [SPR-9833] - HttpComponentsHttpInvokerRequestExecutor does not explicitly release connection
  • [SPR-9841] - Upgrade spring mvc app to 3.1.2 causes content-type to be returned as 'application/*+xml'
  • [SPR-9845] - Automatically created java.inject.Provider cannot be injected into session scoped beans
  • [SPR-9846] - Hibernate 4 class loading issue on JBoss 7 when hibernate & spring classes loaded by different classloaders
  • [SPR-9851] - Prevent memory leaks with @Configuration beans
  • [SPR-9852] - @Resource injection of singleton in prototype using AnnotationConfigApplicationContext is not thread-safe
  • [SPR-9854] - POM dependency issue: com.caucho#com.springsource.com.caucho;3.2.1 is no longer available
  • [SPR-9855] - ServletConfigAware-related exception is not thrown as expected
  • [SPR-9857] - LoadTimeWeaving not working properly in Websphere
  • [SPR-9865] - TypeConverterDelegate falls back to deprecated Date constructor when first converter failed
  • [SPR-9867] - Unscalable code in Jaxb2Marshaller
  • [SPR-9868] - NullPointerException in AbstractMessageConvertorMethodProcessor
  • [SPR-9869] - OpDivide wrongly wraps result of division in TypedValue
  • [SPR-9874] - Portlet mapping predicate compareTo is not transitive
  • [SPR-9876] - DispatcherPortlet should forward to view for ResourceRequest
  • [SPR-9883] - Inconsistent behavior for LocalContainerEntityManagerFactoryBean for using/not using persistence.xml, with Hibernate4
  • [SPR-9898] - Close 'beans' tag in MVC namespace documentation
  • [SPR-9930] - When SimpleMessageListenerContainer could not connect, it throws a NullPointerException in shutdown()
  • [SPR-10551] - Jaxb2Marshaller + packagesToScan + SpringMVC fails to find supported class

Improvement

  • [SPR-7392] - Make ResourceBundleMessageSource more flexible (catching up with Java 6's java.util.ResourceBundle)
  • [SPR-8463] - TypeConverterDelegate contains commented out code
  • [SPR-9111] - 3.1.x reference docs mentions RequestBodyNotValidException but should be MethodArgumentNotValidException
  • [SPR-9117] - Creating of Spring beans takes a long time when the application is deployed through webstart / jnlp with Java 6 and above
  • [SPR-9159] - @ResponseBody does not work with @ExceptionHandler when reason is set in @ResponseStatus
  • [SPR-9218] - Value-oriented return method handling broken in 3.1
  • [SPR-9235] - Deprecate SimpleJdbcTestUtils in favor of JdbcTestUtils
  • [SPR-9474] - UriComponentsBuilder.query(String) does not always match properly the query
  • [SPR-9486] - Add SpEL support for float literals
  • [SPR-9655] - HttpHeaders.getAccept() does not return all accept headers for Iplanet WebServer 7
  • [SPR-9670] - Poor Performance with lots of Prototype Scoped Beans
  • [SPR-9681] - Sybase lock wait timeout error code missing
  • [SPR-9747] - Get rid of per-instance logger creation
  • [SPR-9748] - Share MethodParameter cache between HandlerMethods
  • [SPR-9749] - Avoid per-request Pattern.compile() calls.
  • [SPR-9757] - Allow Jaxb2Marshaller to work with EclipseLink MOXy when using external binding definitions
  • [SPR-9794] - Spring 3.1 CookieGenerator does not support HttpOnly property added in servlet 3.0
  • [SPR-9798] - Support opaque URIs in UriComponentsBuilder
  • [SPR-9812] - allow replaced-method 'arg-type' matches against element body as well as 'match' attribute
  • [SPR-9853] - Add JDBC exception translation support for Oracle error code ORA-06550
  • [SPR-9856] - AbstractRoutingDataSource does not allow to unwrap the underlying datasource

New Feature

  • [SPR-9734] - Allow parsing of media types with single-quotes

Refactoring

  • [SPR-9316] - caught NullPointerException in AutowiredAnnotationBeanPostProcessor.determineRequiredStatus

Task

  • [SPR-9573] - Dependency mismatch with scheduling task and context with 3.1.2.RELEASE
  • [SPR-9596] - Fix typo in new-in-3.1.html page
  • [SPR-9609] - Typo in ApplicationContextAware and BeanNameAware section

Edit/Copy Release Notes

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