Problem
A jOOQ TransactionProvider bean is created, but is not configured to be used by the DefaultConfiguration. This applies to Spring Boot 3.0.0, 3.0.1, 3.0.2.
A recent commit (https://github.com/spring-projects/spring-boot/commit/51df7813a594822ae39b4e8ba042f9133c080eb2) removed the DefaultConfigurationCustomizer that configured DefaultConfiguration to use the TransactionProvider if such a bean was available.
Solution
This PR sets the TransactionProvider (if available) when creating the DefaultConfiguration.
Comment From: pivotal-cla
@ath0s Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.
Comment From: ath0s
@pivotal-cla This is an Obvious Fix
Comment From: pivotal-cla
@ath0s This Pull Request contains an obvious fix. Signing the Contributor License Agreement is not necessary.
Comment From: wilkinsona
@ath0s Unfortunately, this doesn't qualify as an obvious fix as it changes functionality. Please sign the CLA.
Comment From: pivotal-cla
@ath0s Thank you for signing the Contributor License Agreement!
Comment From: wilkinsona
This was intentional (see https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.5-Release-Notes#customizing-jooqs-defaultconfiguration and https://github.com/spring-projects/spring-boot/issues/24732) but I think we went too far. Given that Boot itself defines the TransactionProvider bean, it also makes sense for Boot to configure jOOQ to use it without the user having to define a customizer.
Comment From: wilkinsona
Thanks very much for the PR, @ath0s.