github spring-projects/spring-framework v4.3.15.RELEASE
4.3.15 Release

latest releases: v6.2.0-M2, v6.1.7, v6.0.20...
5 years ago

⭐ New Features

  • Spring Websockets Broker relay supporting a cluster of STOMP endpoint addresses [SPR-12452] #17057
  • Quartz Scheduler - configurable SchedulerFactory [SPR-16439] #20985
  • Avoid String concatenation for not-null assertion in BeanProperty/DirectFieldBindingResult [SPR-16455] #21000
  • AcceptHeaderLocaleResolver should match country locales against supported language locales [SPR-16457] #21002
  • Support for ResolvableType.getType().getTypeName() on Java 8 [SPR-16535] #21078
  • Consistent incrementer arrangement for PostgreSQL, DB2 and SAP HANA [SPR-16558] #21101
  • MockMvcResultMatchers.jsonPath(String).value() should have a matching method to declare the expected type [SPR-16587] #21129
  • Support for SimpleEvaluationContext in SpEL [SPR-16588] #21130
  • Consistent volatile access to running flag in Lifecycle implementations [SPR-16596] #21137
  • When @DependsOn throws a NoSuchBeanDefinitionException it should include the dependent bean for clarity [SPR-16628] #21169
  • Generate multipart boundary using SecureRandom [SPR-16635] #21176
  • Reduce ClassUtils.forName overhead (in particular for annotation introspection purposes) [SPR-16667] #21208
  • Add cpp to mime.types as text/plain [SPR-16678] #21219

🪲 Bug Fixes

  • Precondition failed for PUT methods on ResponseEntity return types [SPR-15780] #20335
  • SubProtocolWebSocketHandler should not log ERROR on "No messages received after ..." [SPR-16409] #20955
  • ServletServerHttpRequest.getURI() may throw a java.net.URISyntaxException [SPR-16414] #20960
  • AbstractClientSockJsSession.close call does not propagate IOException from disconnect [SPR-16415] #20961
  • Spurious WARNINGs when XML declared TransactionProxyFactoryBean's target bean depends on an annotation declared bean that depends on another bean [SPR-16427] #20973
  • Lambda error detection might not work on JDK 9 [SPR-16435] #20981
  • CachingConnectionFactory - Invalid session in session cache [SPR-16450] #20995
  • MockMvcRequestBuilder does not decode pathInfo [SPR-16453] #20998
  • MimeType compareTo implementation is not compatible with equals [SPR-16458] #21003
  • GSON converter only serialises fields of controller method return type, ignoring subclass fields of response object [SPR-16461] #21006
  • SimpleJdbcCall can't access synonyms in Oracle database [SPR-16478] #21022
  • Set thread interrupt flag on InterruptedException [SPR-16479] #21023
  • JsonMappingException when trying to instantiate org.springframework.messaging.Message [SPR-16486] #21029
  • Deadlock in SubProtocolWebSocketHandler on shutdown with Undertow [SPR-16488] #21031
  • NPE in Spring-JDBC with Oracle and SimpleJdbcInsert [SPR-16495] #21038
  • ExceptionHandlerExceptionResolver advice applicability check may fail against interface-based controller proxy [SPR-16496] #21039
  • FormTag renders empty
    tag [SPR-16498] #21041
  • ForwardedHeaderFilter garbles query params during sendRedirect() [SPR-16506] #21049
  • StringIndexOutOfBoundsException when rewriting links in CSS resources [SPR-16526] #21069
  • Spurious ERROR-level logging when using SSEEmitter [SPR-16528] #21071
  • GsonHttpMessageConverter cannot be used in an SseEmitter because it closes the response stream [SPR-16529] #21072
  • testBindInstantFromJavaUtilDate fails on systems in the Pacific/Auckland time zone [SPR-16534] #21077
  • WebApplicationContextFacesELResolver#isReadOnly always return false [SPR-16543] #21086
  • PostgresTableMetaDataProvider.isGetGeneratedKeysSimulated() does not detect Postgres 10 [SPR-16556] #21099
  • Missing PersistenceException cause message in refresh failure warn log [SPR-16559] #21102
  • Reading annotations in ConfigurationClassParser does not fall back to ASM on Google App Engine [SPR-16564] #21106
  • Inconsistent synchronization in AbstractBeanFactoryBasedTargetSource and JdbcAccessor [SPR-16570] #21112
  • WebAsyncManager concurrentResult should be volatile [SPR-16571] #21113
  • TransactionTemplate inherits equals()/hashCode() from DefaultTransactionDefinition [SPR-16572] #21114
  • SimpleAliasRegistry registerAlias not atomic [SPR-16577] #21119
  • URIEditor should not double escape classpath: URIs [SPR-16581] #21123
  • RestTemplate with HttpComponentsClientHttpRequestFactory and no buffering with an interceptor throws UnsupportedOperationException [SPR-16582] #21124
  • Inconsistent handling of null values through Java 8 accessors in ConcurrentReferenceHashMap [SPR-16584] #21126
  • AcceptHeaderLocaleResolver chooses wrong Locale for language match [SPR-16599] #21140
  • CallMetaDataContext.reconcileParameters doesn't catch output parameters with DatabaseMetaData.procedureColumnResult type (on Postgres) [SPR-16611] #21152
  • Consistent thread-safe iteration in DefaultSingletonBeanRegistry [SPR-16620] #21161
  • FactoryBeanRegistrySupport atomicity issues [SPR-16625] #21166
  • Address race condition within spring that causes about-to-be-created-bean exceptions [SPR-16627] #21168
  • An error occurs if a blank character exists before and after the delimiter of the MIME type parameter. [SPR-16630] #21171
  • Multipart Upload with Commons Fileupload on lazy mode downloads data on cleanup [SPR-16640] #21181
  • Concurrent result may be missed due to a race condition in MockMvc [SPR-16648] #21189
  • ServletUriComponentsBuilder should replace context path when X-Forwarded-Prefix is present [SPR-16650] #21191
  • Annotation lookup on parameter in inner class constructor fails when using javac from JDK versions prior to 9 [SPR-16652] #21193
  • UriComponentsBuilder Forwarded header parsing can throw java.lang.NumberFormatException [SPR-16660] #21201
  • NamedParameterUtils.parseSqlStatement should parse :{x} style parameter correctly [SPR-16663] #21204
  • Unable to bind a null value for UUID column with PostgreSQL [SPR-16669] #21210
  • SimpleMailMessage's handling of to/cc/bcc arrays is inconsistent [SPR-16671] #21212
  • DefaultResponseErrorHandler wastes the body of a response with an unknown status [SPR-16604] #21145
  • Race condition in ConcurrentMapCache [SPR-16533] #21076

📔 Documentation

  • Incorrect description for class-level @Transactional with AspectJ [SPR-16552] #21095
  • Doc: @Scope not inherited from base class [SPR-16602] #21143

Don't miss a new spring-framework release

NewReleases is sending notifications on new releases.