在单个Hibernate事务中保存多个新实体



我正在尝试创建一个EJB服务方法,该方法创建两个新的实体对象,并将它们彼此关联以及与现有实体关联。类之间的关系如下:

ClassA 1:N ClassB
ClassA 1:N ClassC
ClassB 1:N ClassC

目前,所有关系都是双向的,我将每个关系的CascadeType设置为"all"。ClassA的实例将使用实体管理器进行查找。ClassB和ClassC是作为此方法的一部分创建的新实例。我想做的是建立关系,保持所有更改,并返回ClassC的更新实例。问题是,当我真正尝试提交事务时,我总是会收到这样的错误:

"(javax.resource.ResourceException:事务未处于活动状态:tx=TransactionImple<ac,基本作用:0:ffff7f000001:126a:50b6222c:c2status:ActionStatus。ABORT_ONLY>)">

有人知道如何做这样的事情吗?

您可能发现了一个来自transactionnal方法(用@TransactionAttribute标注)的错误,该方法已将事务标记为已回滚,因此当前事务在提交时不再有效(已由容器回滚)。

最新更新