错误背景
ssh项目一个Action请求转发到另一个请求
<action name="replay_op" class="replayOperator" method="replay_ask"><result name="success" type="redirect">/details.kk?post_id=${post_id}</result></action>
错误信息(挑了主要的)
org.springframework.transaction.TransactionSystemException: Could not commit Hibernate transaction; nested exception is org.hibernate.TransactionException: commit failedorg.hibernate.TransactionException: commit failedorg.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(AbstractTransactionImpl.java:185)org.hibernate.TransactionException: unable to commit against JDBC connectionorg.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doCommit(JdbcTransaction.java:116)org.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(AbstractTransactionImpl.java:178)org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:557)
错误原因:
连接关闭或者连接超时 连接数目达到最大
解决方案:
1、如果是一个Action请求之后紧跟着另一个Action请求的话,建议去掉session.close();(我的错误就是关闭了session)
2、连接池连接超时了 设置连接池的连接数、连接间隔时间