Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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
Jpa 此线程当前没有活动的外部管理事务(只有持久查询!!)_Jpa_Persistence_Jta_Spring Transactions_Transactionmanager - Fatal编程技术网

Jpa 此线程当前没有活动的外部管理事务(只有持久查询!!)

Jpa 此线程当前没有活动的外部管理事务(只有持久查询!!),jpa,persistence,jta,spring-transactions,transactionmanager,Jpa,Persistence,Jta,Spring Transactions,Transactionmanager,您好,我一直在使用GlassFish服务器上的Spring4和EclipseLink开发一个web应用程序。 我在mySQL服务器上使用wampserver,在GlassFish上使用connexion池 这是我的persistence.xml <?xml version="1.0" encoding="UTF-8"?> <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns

您好,我一直在使用GlassFish服务器上的Spring4和EclipseLink开发一个web应用程序。 我在mySQL服务器上使用wampserver,在GlassFish上使用connexion池

这是我的persistence.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
    <persistence-unit name="NetworkAdministrationBD_pu" transaction-type="JTA">
        <jta-data-source>networkadminDB2</jta-data-source>
        <class>tn.insat.entities.Administrateur</class>
        <class>tn.insat.entities.Responsable</class>
    </persistence-unit>
</persistence>
当在JPQL中或直接通过EntityManager方法(em.find())执行非持久性查询时,“AdministratorDao”对象工作正常

但是,当执行持久性查询(例如em.remove())时,我会遇到上述异常

delete方法表单“administrateurDao”如下所示:

try{ 
Query query = em.createQuery("DELETE FROM Administrateur a WHERE a.id = :id");
            query.setParameter("id", id);
            query.executeUpdate();
}
catch (Exception e){
throw new DAOException() ;
}
经过一些调试和测试,我发现错误是在

query.executeUpdate();
指挥部

我不知道它是否相关,但GWT RPC服务也使用了“AdministrationUrDAO”存储库bean

我已经阅读了所有的互联网问题和文档,没有一个在不将事务类型从JTA更改为RESOURCE_LOCAL或切换hole持久层的情况下提出解决方案

另外,添加@Transactional注释会引发另一个异常:

Exception Description: Cannot use an EntityTransaction while using JTA.
我被困太久了,有什么想法吗

query.executeUpdate();
Exception Description: Cannot use an EntityTransaction while using JTA.