Spring Framework 5.1.5 releases: bug fixes

Spring Framework

The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications – on any kind of deployment platform.

A key element of Spring is infrastructural support at the application level: Spring focuses on the “plumbing” of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.Spring Framework



  • Core technologies: dependency injection, events, resources, i18n, validation, data binding, type conversion, SpEL, AOP.
  • Testing: mock objects, TestContext framework, Spring MVC Test, WebTestClient.
  • Data Access: transactions, DAO support, JDBC, ORM, Marshalling XML.
  • Spring MVC and Spring WebFlux web frameworks.
  • Integration: remoting, JMS, JCA, JMX, email, tasks, scheduling, cache.
  • Languages: Kotlin, Groovy, dynamic languages.

Changelog v5.1.5

⭐️ New Features

  • Fix for ScriptUtils failure when ‘–‘ occurs inside a multi-line comment on the same line as ‘*/’ #22392
  • InjectionPoint autowiring throws exception for @resource beans autowired by name #22359
  • PathMatchingResourcePatternResolver may double-wrap jar: URLs #22346
  • mariadb-java-client 2.4.0 productName changed: breaks Spring Batch #22344
  • SpringEL should not throw IllegalAccessError for invalid assignment #22336
  • Avoid duplicate call to findAnnotations in DefaultListableBeanFactory.findAnnotationOnBean #22318
  • Load-time weaving support for WildFly 13+ #22297
  • org.springframework.web.client.HttpMessageConverterExtractor#extractData fails to detect empty body when content-length header is missing #22265
  • Deprecate JibxMarshaller #22249
  • DefaultExceptionHandler logs warning cannot be disabled [SPR-17628] #22159
  • Support for null literal in Jackson2JsonDecoder [SPR-17510] #22042

🐞 Bug Fixes

  • IllegalArgumentException when overriding empty ‘excludeFilters’ array on @componentscan #22405
  • @transactional beans not getting proxied when being initialized during failed circular reference attempt #22370
  • CompositeLog does not log exceptions at ERROR level #22364
  • ApplicationContext.refresh() causes stale listeners to be added to ApplicationEventMulticaster #22325
  • ApplicationListenerMethodAdapter does not find @ordered annotation for dynamic proxies #22307
  • NPE in AbstractHandlerMethodMapping when trace logging is enabled and a handler’s class loader does not provide package information #22306
  • Incomplete fix for MethodParameter.isOptional() ArrayIndexOutOfBoundsException #22303
  • Wrap DecodingException thrown by WebFlux functional endpoints #22290
  • Fix truncation of response body in AbstractMessageConverterMethodProcessor #22287
  • DataBuffer.write(CharSequence charSequence, Charset charset) fails on empty string with java.lang.IllegalStateException: Current state = RESET, new state = FLUSHED #22262
  • Add tests for SpringBeanContainer (Hibernate ORM integration) and fix the behavior when requesting named beans #22260
  • ServerSentEventHttpMessageReader leaves a leading space on field decoding [SPR-17511] #22043