我正在使用c3p0.ComboPooledDataSource连接到我的oracle数据库,这里是代码片段,我已经在Jboss Fuse ESB中部署了这个应用程序
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
<property name="driverClass" value="oracle.jdbc.driver.OracleDriver" />
<property name="jdbcUrl" value="jdbc:oracle:thin:@localhost:1523:xe" />
<property name="user" value="test" />
<property name="password" value="test" />
</bean
当我尝试将值插入到数据库中时 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@339d05df - 获取尝试失败!!!清除待处理的收购。在尝试获取所需的新资源时,我们未能成功超过允许的最大获取尝试次数(30)。上次获取尝试异常: java.sql.SQLException:没有合适的驱动程序 在java.sql.DriverManager.getDriver(DriverManager.java:278)[:1.7.0_55]
当我使用org.springframework.jdbc.datasource.SimpleDriverDataSource而不是ComboPooledDataSource时它工作正常
答案 0 :(得分:0)
我之前在Fuse / OSGi中设置连接池时遇到问题,因为连接池包(在这种情况下是包含com.mchange.v2.c3p0.ComboPooledDataSource的包)不包含它在Import中使用的驱动程序-包。这可能是问题吗?
如果是这样,有很多选项可以解决问题。例如,你可以,例如:
您会发现搜索“OSGI JDBC池”通常会引发大量有关此问题的其他文章和提示。