简体   繁体   English

错误javax.persistence.TransactionRequiredException:没有事务正在进行

[英]Error javax.persistence.TransactionRequiredException: no transaction is in progress

I tried insert entities to DB. 我尝试将实体插入数据库。 And I have BaseJpaDao class: 我有BaseJpaDao类:

@Transactional(Transactional.TxType.REQUIRED)
public abstract class BaseJpaDao<E> implements BaseDao<E> {

    protected Class<?> entityClass;
    private EntityManager em;

    public BaseJpaDao(Class<?> entityClass) {
        this.entityClass = entityClass;
        em = Persistence.createEntityManagerFactory("COLIBRI").createEntityManager();
    }

    @Override
    public E persist(E e) {
        em.persist(e);
        return e;
    }
...
@Override
    public void flush() {
        em.flush();
    }

And I have child class extends BaseJpaDao 我的孩子班延伸了BaseJpaDao

public class CallJpaDao extends BaseJpaDao<Calls> implements CallDao {

and method 和方法

@Override
    public void insertCalls(List<Calls> callsList) {
        for (Calls call : callsList) {
            try {
                persist(call);
                flush();
            } catch (Exception e) {
                logger.log(Level.FINEST, "Exception in  task time={0}. Exception message = {1}.", new Object[]{call.getDate(), e.getMessage()});
            }
        }
    }

I tried persist and flush entity but I have an error: 我尝试了持久和刷新实体,但出现错误:

javax.persistence.TransactionRequiredException: no transaction is in progress

EDIT 编辑

I change dependency to 我将依赖关系更改为

<dependency>
            <groupId>javax.ejb</groupId>
            <artifactId>javax.ejb-api</artifactId>
            <version>3.2</version>
        </dependency>

It not helped. 它没有帮助。

And I add @Transactional annotation to child class - not helped 我将@Transactional注释添加到子类-没有帮助

@Transactional更改为:

@Transactional(Transactional.TxType.REQUIRES_NEW)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 javax.persistence.TransactionRequiredException:Spring 5 中没有正在进行的事务 - javax.persistence.TransactionRequiredException: no transaction is in progress in Spring 5 没有正在进行的交易; 嵌套异常是 javax.persistence.TransactionRequiredException: no transaction is in progress - No transaction is in progress; nested exception is javax.persistence.TransactionRequiredException: no transaction is in progress Hibernate JPA和Spring javax.persistence.TransactionRequiredException:没有事务正在进行中 - Hibernate JPA and Spring javax.persistence.TransactionRequiredException: no transaction is in progress javax.persistence.TransactionRequiredException:@Lock 注释上没有正在进行的事务 - javax.persistence.TransactionRequiredException: no transaction is in progress on @Lock annotation 只读服务:javax.persistence.TransactionRequiredException:没有事务在进行中 - Read only service : javax.persistence.TransactionRequiredException: no transaction is in progress 在 Spring 启动应用程序中获取“javax.persistence.TransactionRequiredException:没有正在进行的事务” - Getting “javax.persistence.TransactionRequiredException: no transaction is in progress” in Spring Boot Application javax.persistence.TransactionRequiredException的原因是什么:没有事务在进行中 - What are the causes for javax.persistence.TransactionRequiredException: no transaction is in progress Spring集成:javax.persistence.TransactionRequiredException:没有事务在进行中 - Spring Integration: javax.persistence.TransactionRequiredException: no transaction is in progress Hibernate 5.2.10.Final - javax.persistence.TransactionRequiredException:没有事务正在进行中 - Hibernate 5.2.10.Final - javax.persistence.TransactionRequiredException: no transaction is in progress Hibernate + Spring:javax.persistence.TransactionRequiredException:没有正在进行的事务 - Hibernate + Spring: javax.persistence.TransactionRequiredException: no transaction is in progress
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM