Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.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
Java持久化操作每次都会导致MySQL数据库中的回滚_Java_Mysql_Jpa_Rollback_Persist - Fatal编程技术网

Java持久化操作每次都会导致MySQL数据库中的回滚

Java持久化操作每次都会导致MySQL数据库中的回滚,java,mysql,jpa,rollback,persist,Java,Mysql,Jpa,Rollback,Persist,我有个问题 我有这个功能: public boolean insertOrgToAlign(OrganizationData orgData) { try { if (eManager.find(ScOrgNotAligned.class, orgData.getOrganizationCode()) == null) { ScAdminGroup rootByOrg = null; Admi

我有个问题

我有这个功能:

public boolean insertOrgToAlign(OrganizationData orgData) {
        try {
            if (eManager.find(ScOrgNotAligned.class, orgData.getOrganizationCode()) == null) {
                ScAdminGroup rootByOrg = null;
                AdminGroupBean admGrp = null;
                try {
                    rootByOrg = adminGroupServices.getRootAdminGroupByOrg(orgData.getOrganizationCode());
                } catch (NoResultException e) {
                    logger.debugT("insertOrgToAlign(..) - org to align has no root");
                    return false;
                } catch (NonUniqueResultException e) {
                    logger.debugT("insertOrgToAlign(..) - org to align has more than one root");
                    admGrp = new AdminGroupBean();
                    admGrp.setAdmGroupId(-1);
                    admGrp.setAdmGroupName("ERROR");
                    ScOrgNotAligned scOrgNotAlig = new ScOrgNotAligned(orgData, admGrp);
                    eManager.persist(scOrgNotAlig);
                    logger.debugT("insertOrgToAlign(..) - persist org to adjust manually : "
                            + orgData.getOrganizationName());
                    return true;
                }
                admGrp = new AdminGroupBean(rootByOrg);
                ScOrgNotAligned scOrgNotAlig = new ScOrgNotAligned(orgData, admGrp);
                //**************************
                //THIS IS THE WRONG LINE????
                eManager.persist(scOrgNotAlig);
                //**************************
                logger.debugT("insertOrgToAlign(..) - persist org to align : " + orgData.getOrganizationName());
            } else {
                logger.debugT("insertOrgToAlign(..) - org to align already exists in db : "
                        + orgData.getOrganizationName());
            }
        } catch (Exception e) {
            logger.traceThrowableT(Severity.ERROR, e.getMessage(), e);
            return false;
        }
        return true;
    }
如果我评论eManager.persist(scorgontalig)line,函数写在DB中;如果我取消对该行的注释,该函数将在写入DB时导致回滚

异常的堆栈跟踪是:

(Failed in component: sap.com/tc~ejbexplorer~ear, BC-JAS-EJB) nested exception is: 
com.sap.engine.services.ts.exceptions.BaseRollbackException: Exception in
beforeCompletion of ( JTA Transaction : 45491 ).

为什么??有什么想法吗?

你能给我们看看例外情况的堆栈跟踪吗?我添加到Question;)嗯,这似乎不是(整个)堆栈跟踪。。。如果这就是你所得到的,我帮不了你多少…在stacktrace中,我没有例外!这是件奇怪的事。。。。我只在EJB资源管理器页面中获得此信息。。。