Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法回滚JDBC事务;嵌套异常为java.sql.SQLException:连接已关闭_Java_Hibernate_Connection - Fatal编程技术网

无法回滚JDBC事务;嵌套异常为java.sql.SQLException:连接已关闭

无法回滚JDBC事务;嵌套异常为java.sql.SQLException:连接已关闭,java,hibernate,connection,Java,Hibernate,Connection,当cron调度器运行我收到的“无法回滚JDBC事务;嵌套异常为java.sql.SQLException:连接已关闭”的进程时,我使用了此方法 请让我知道这个解决方案。另外,如果有更多细节,请询问我 @Override public void updatePOCustStatus(List<PoOrderPojo> openPoList) { Session session = null; String uptQuery = ""; for(PoOrder

当cron调度器运行我收到的“无法回滚JDBC事务;嵌套异常为java.sql.SQLException:连接已关闭”的进程时,我使用了此方法

请让我知道这个解决方案。另外,如果有更多细节,请询问我

@Override
public void updatePOCustStatus(List<PoOrderPojo> openPoList) {

    Session session = null;
    String uptQuery = "";

    for(PoOrderPojo poJsonObj : openPoList)
    {
        try {
            session = hibernateSession.openSession();

            session.beginTransaction();
            uptQuery = "UPDATE plm_purchase_order_mt SET po_cust_edi= 'T', po_cust_edi_on = NOW() WHERE po_id ="+poJsonObj.getPoId();

            logger.info("uptQuery = "+uptQuery);

            int totalUpdate = session.createSQLQuery(uptQuery).executeUpdate();
            session.getTransaction().commit();

            if (totalUpdate > 0) {
                logger.info("Updated poCustEdi as T to the "+poJsonObj.getPoId()+" , status =" + totalUpdate);
            } else {
               logger.info("Failed to updated poCustEdi as T to the "+poJsonObj.getPoId()+" , status =" + totalUpdate);
            }
        }catch (HibernateException ex) {
            logger.error(AppException.getStackTrace(ex));
            session.getTransaction().rollback();
        }finally{
            hibernateSession.closeSession(session);
        }
        uptQuery = "";
    }
}
@覆盖
公共无效更新客户状态(列表openPoList){
会话=空;
字符串“=”;
对于(PoOrderPojo poJsonObj:openPoList)
{
试一试{
session=hibernateSession.openSession();
session.beginTransaction();
uptQuery=“更新plm\u采购订单\u mt设置采购订单客户edi='T',采购订单客户edi=NOW(),其中采购订单id=“+poJsonObj.getPoId();
logger.info(“uptQuery=“+uptQuery”);
int totalUpdate=session.createSQLQuery(uptQuery.executeUpdate();
session.getTransaction().commit();
如果(totalUpdate>0){
logger.info(“将poCustEdi更新为“+poJsonObj.getPoId()+”,status=“+totalUpdate”);
}否则{
logger.info(“未能将poCustEdi更新为“+poJsonObj.getPoId()+”,status=“+totalUpdate”);
}
}捕获(HibernateeException例外){
logger.error(AppException.getStackTrace(ex));
session.getTransaction().rollback();
}最后{
hibernateSession.closeSession(会话);
}
uptQuery=“”;
}
}

提交事务将关闭关联的会话。请您进一步解释。我是新来的。