0 0

Could not open JPA EntityManager for transaction,Bonecp Struts2+Spring+JPA 异常 5

本人所用项目框架Struts2+Spring+JPA,数据源以前使用的是DBCP,近期改用Bonecp,出现异常,请高人或有类似遭遇的朋友指点。

一.异常如下:
org.springframework.transaction.CannotCreateTransactionException: Could not open JPA EntityManager for transaction; nested exception is javax.persistence.PersistenceException: org.hibernate.TransactionException: JDBC begin transaction failed:
at org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:427)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:371)
at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:334)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:105)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:631)
......
......
......
Caused by: javax.persistence.PersistenceException: org.hibernate.TransactionException: JDBC begin transaction failed:
......
......
......

二.Bonecp配置如下:
<!-- 数据源配置, 使用BoneCP数据库连接池 -->
   
    <bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close">
    <!-- Connection Info -->
        <property name="driverClass" value="${jdbc.driver}"/>
        <property name="jdbcUrl" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>

<!-- 检查数据库连接池中空闲连接的间隔时间  -->
<property name="idleConnectionTestPeriod" value="60" />
<!-- 连接池中未使用的链接最大存活时间  -->
<property name="idleMaxAge" value="240" />
<!-- 设置每个分区含有connection最大个数  -->
<property name="maxConnectionsPerPartition" value="20" />
<!-- 设置每个分区含有connection最小个数  -->
<property name="minConnectionsPerPartition" value="10" />
<!-- 设置每个分区数  -->
<property name="partitionCount" value="1" />
<!-- 设置分区中的connection增长数量  -->
<property name="acquireIncrement" value="5" />
<!-- 设置连接池阀值  -->
<property name="poolAvailabilityThreshold" value="20"/>
<!-- 连接时间  -->
<property name="connectionTimeout" value="60000"/>
</bean>


异常是否是由Bonecp参数配置不当造成,请各位朋友指点。
2013年7月22日 11:00

1个答案 按时间排序 按投票排序

0 0

bonecp存在jdk版本的依赖,请说明一下你使用的bonecp版本和jdk版本

2013年7月22日 14:40

相关推荐

Global site tag (gtag.js) - Google Analytics