https://bz.apache.org/bugzilla/show_bug.cgi?id=67664

> On Oct 13, 2023, at 05:45, Richard Cook <richard.c...@kohls.com.INVALID> 
> wrote:
> 
> Hi,
> 
> We have a spring boot application (v3.1.4) It currently uses
> 
> <dependency>
> <groupId>org.apache.tomcat</groupId>
> <artifactId>tomcat-jdbc</artifactId>
> <version>10.1.13</version>
> </dependency>
> 
> A renovate bot updated this package to 10.1.14 and now our app fails
> on startup, with the following exception..
> 
> 2023-10-11T22:27:16.981Z WARN 7 — [ main]
> o.h.e.j.e.i.JdbcEnvironmentInitiator : HHH000342: Could not obtain
> connection to query metadata
> java.sql.SQLException: null
> at 
> org.apache.tomcat.jdbc.pool.ConnectionPool.setupConnection(ConnectionPool.java:351)
> ~[tomcat-jdbc-10.1.14.jar!/:na]
> at 
> org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:200)
> ~[tomcat-jdbc-10.1.14.jar!/:na]
> at 
> org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:133)
> ~[tomcat-jdbc-10.1.14.jar!/:na]
> at 
> org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.j
> 
> 
> 
> 
> Caused by: java.lang.IllegalArgumentException:
> org.apache.tomcat.jdbc.pool.PooledConnection is not an interface
>    at 
> java.base/java.lang.reflect.Proxy$ProxyBuilder.validateProxyInterfaces(Proxy.java:706)
> ~[na:na]
>    at java.base/java.lang.reflect.Proxy$ProxyBuilder.<init>(Proxy.java:648)
> ~[na:na]
>    at 
> java.base/java.lang.reflect.Proxy.lambda$getProxyConstructor$1(Proxy.java:440)
> ~[na:na]
>    at 
> java.base/jdk.internal.loader.AbstractClassLoaderValue$Memoizer.get(AbstractClassLoaderValue.java:329)
> ~[na:na]
>    at 
> java.base/jdk.internal.loader.AbstractClassLoaderValue.computeIfAbsent(AbstractClassLoaderValue.java:205)
> ~[na:na]
>    at java.base/java.lang.reflect.Proxy.getProxyConstructor(Proxy.java:438)
> ~[na:na]
>    at java.base/java.lang.reflect.Proxy.getProxyClass(Proxy.java:398) ~[na:na]
>    at 
> org.apache.tomcat.jdbc.pool.ConnectionPool.getProxyConstructor(ConnectionPool.java:377)
> ~[tomcat-jdbc-10.1.14.jar:na]
>    at 
> org.apache.tomcat.jdbc.pool.ConnectionPool.setupConnection(ConnectionPool.java:339)
> ~[tomcat-jdbc-10.1.14.jar:na]
> 
> 
> The code throws the exceptino when lef.afterPropertiesSet() is called.
> 
> 
> @Bean(name = "fsEntityManagerFactory")
> public EntityManagerFactory entityManagerFactory(DataSource fsDataSource) {
> LocalContainerEntityManagerFactoryBean lef = new
> LocalContainerEntityManagerFactoryBean();
> HibernateJpaVendorAdapter vendorAdapter = new HibernateJpaVendorAdapter();
> lef.setDataSource(fsDataSource);
> lef.setJpaVendorAdapter(vendorAdapter);
> lef.setPackagesToScan("xxxxxx");
> lef.setPersistenceUnitName("fsPersistenceUnit");
> HashMap<String, Object> properties = new HashMap<>();
> properties.put("hibernate.dialect", "org.hibernate.dialect.DB2Dialect");
> properties.put(AvailableSettings.ENHANCER_ENABLE_ASSOCIATION_MANAGEMENT,
> "false");
> properties.put(AvailableSettings.ENHANCER_ENABLE_DIRTY_TRACKING, "false");
> properties.put(AvailableSettings.ENHANCER_ENABLE_LAZY_INITIALIZATION, 
> "false");
> properties.put("hibernate.jdbc.fetch_size", hibernateFetchSize);
> properties.put("hibernate.show_sql", hibernateShowSQL);
> properties.put("hibernate.default_schema", hibernateDefaultSchema);
> 
> lef.setJpaPropertyMap(properties);
> lef.afterPropertiesSet();
> return lef.getObject();
> }
> 
> 
> Right now I've reverted back to 10.1.13 and it works.
> 
> What is the best way to fix this?
> 
> I saw the release notes, updates were changed to the connection
> pooling classes, but I'm unsure on how to proceed.
> 
> Thank you,
> 
> Rich
> CONFIDENTIALITY NOTICE:
> This is a transmission from Kohl's, Inc. and may contain information which is 
> confidential and proprietary.
> If you are not the addressee, any disclosure, copying or distribution or use 
> of the contents of this message is expressly prohibited.
> If you have received this transmission in error, please destroy it and notify 
> us immediately at 262-703-7000.
> 
> CAUTION:
> Internet and e-mail communications are Kohl's property and Kohl's reserves 
> the right to retrieve and read any message created, sent and received. Kohl's 
> reserves the right to monitor messages by authorized Kohl's Associates at any 
> time without any further consent.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to