我想迁移我们的Java servlet以使用Hikari Connection Pool而不是C3P0。 但是,我遇到了一个奇怪的错误 - 在Hibernate启动期间, servlet崩溃:
Method org.postgresql.jdbc4.Jdbc4Connection.isValid(int) is not yet implemented.
这是一种奇怪的行为,因为我们正在使用最新的JDBC41 postgresql驱动程序,摘自我们的pom.xml:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.3-1102-jdbc41</version>
</dependency>
并且根据JDBC驱动程序的changelog,isValid()
方法应该已经在9.3-1102中正确实现了。我们在C3P0上使用这个版本的驱动程序并且完全没有问题。
我们还尝试使用正常工作的Pgsql-NG
JDBC驱动程序,但在处理PostGIS数据类型时遇到了错误。
我还尝试将Hikari配置中的connectionTestQuery
设置为SELECT 1
,以强制Hikari不使用isValid()
,但这没有效果。
有没有人遇到过这个问题或一些解决方法?