Spring Boot 3.2.1 Release Highlights: Bug Fixes, Docs, and Dependency Upgrades
This release note summarizes Spring Boot 3.2.1's extensive bug fixes, documentation updates, and a comprehensive set of dependency upgrades, providing developers with essential information to upgrade their applications safely and efficiently.
Bug Fixes
HibernateJpaAutoConfigurationmust be applied before
DataSourceTransactionManagerAutoConfiguration(issue #38880).
Duplicate
META-INFentries under
BOOT-INF/classescause "Conflicting persistence unit definitions" errors (issue #38862).
When using
log4j2, the property
logging.include-application-nameis ineffective (issue #38847).
Using Pulsar Client 3.1.0 can trigger an
IllegalStateExceptiondue to authentication parameter properties (issue #38839).
Sub‑contexts created with
SpringApplicationBuilderrun the parent’s runner (issue #38837).
When the new loader implements
requiresUnpack, signed JARs lose
getSigners()information (issue #38833).
TestContainers parallel initialization may not work correctly (issue #38831).
Closing cached JARs in
StaticResourceJarscan throw a Zip file closed exception (issue #38770).
Multi‑byte filenames in compressed files may cause
ZipString.hashto enter an infinite loop (issue #38751).
Gradle 8.6‑milestone‑1 "bootJar" task fails with "Failed to get permissions" (issue #38741).
Custom binding converters are ignored when using collection types (issue #38734).
WebFlux and resource‑server auto‑configuration may fail due to an empty authentication manager (issue #38713).
Docker Compose services are not reported as not started when some are already running (issue #38661).
Spring Boot JAR launcher fails in directories containing certain characters (issue #38660).
Unused SSL bundles eagerly throw
FileNotFoundException(issue #38659).
NoUniqueBeanDefinitionFailureAnalyzerdoes not consider missing "-parameters" as a possible cause (issue #38652).
Tracing is propagated even when tracing is disabled (issue #38641).
JMS listener observation support lacks registration auto‑configuration (issue #38613).
Class loading failures on interrupted threads prevent Mongo from detecting cluster changes (issue #38611).
Failures caused by missing "-parameters" compilation are hard to identify (issue #38603).
System SSL certificates are not used by
RestTemplatebuilt with
RestTemplateBuilder(issue #38600).
Using specific nested JARs can cause
ZipFileSystemto throw "java.util.zip.ZipException: read CEN tables failed" (issue #38595).
Inability to split and reassemble nested JAR URLs leads to errors in projects like JobRunr (issue #38592).
Binary incompatibility may cause
Session.getCookie()to throw
NoSuchMethodError(issue #38589).
management.metrics.tagsis deprecated without a universal replacement (issue #38583).
org.springframework.boot.loader.zip.ZipContent$Loadermay throw
NegativeArraySizeException(issue #38572).
From 3.1.5 to 3.2.0, the "Default" Tracer is no longer provided in tests (issue #38568).
TomcatWebServer does not close sockets of additional connectors on shutdown (issue #38564).
When using
@SpringBootTestwith a separate management port and mock web environment, the port may already be in use (issue #38554).
Keep‑alive attribute can cause the processAot step to never complete (issue #38531).
Setting
spring.task.scheduling.shutdown.await-termination-perioddoes not invoke
SimpleAsyncTaskScheduler#taskTerminationTimeout(issue #38530).
Setting
spring.task.execution.shutdown.await-termination-perioddoes not invoke
SimpleAsyncTaskExecutor#taskTerminationTimeout(issue #38528).
classLoader.getResource("")returns an empty nested URL, causing
ClassPathResourcefailure (issue #38524).
Spring Boot 3.2 is incompatible with older Liquibase versions (issue #38522).
Controller‑level exceptions are not recorded in HTTP server request metrics (issue #33731).
Documentation
Corrected spelling errors (issue #38879).
Added LangChain4J Spring Boot Starter to the community starter list (issue #38776).
Updated prerequisite documentation for Docker Compose support (issue #38764).
Updated Dynatrace documentation links (issue #38725).
Fixed reference to Jetty HTTP/2 server module (issue #38632).
Corrected Observation Filter documentation (issue #38586).
Restored mention of
testAndDevelopmentOnlywhen using Testcontainers for development (issue #38571).
Dependency Upgrades
AspectJ to 1.9.21
Dropwizard Metrics to 4.2.23
Groovy to 4.0.16
Hibernate to 6.4.1.Final
HttpClient5 to 5.2.3
HttpCore5 to 5.2.4
Janino to 3.1.11
Jaybird to 5.0.3.java11
Jersey to 3.1.5
Jetty to 12.0.5
Kafka to 3.6.1
Kotlin to 1.9.21
Kotlin Serialization to 1.6.2
Logback to 1.4.14
Maven Javadoc Plugin to 3.6.3
Micrometer to 1.12.1
Micrometer Tracing to 1.2.1
Netty to 4.1.104.Final
Pulsar Reactive to 0.5.1
R2DBC Postgresql to 1.0.3.RELEASE
R2DBC Proxy to 1.1.3.RELEASE
Reactor Bom to 2023.0.1
Spring AMQP to 3.1.1
Spring Authorization Server to 1.2.1
Spring Data Bom to 2023.1.1
Spring Framework to 6.1.2
Spring Integration to 6.2.1
Spring Kafka to 3.1.1
Spring LDAP to 3.2.1
Spring Pulsar to 1.0.1
Spring Retry to 2.0.5
Spring Security to 6.2.1
Spring Session to 3.2.1
Spring WS to 4.0.9
Tomcat to 10.1.17
UnboundID LDAPSDK to 6.0.11
Java Architecture Diary
Committed to sharing original, high‑quality technical articles; no fluff or promotional content.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.