1

我正在尝试创建一个 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,BasicAction:0:ffff7f000001:126a:50b6222c:c2状态:ActionStatus.ABORT_ONLY >)”

有谁知道如何去做这样的事情?

4

1 回答 1

0

您可能从已将事务标记为已回滚的事务方法(用 注释)中捕获了一个错误@TransactionAttribute,因此在您提交时当前事务不再有效(已由容器回滚)。

于 2018-03-21T09:21:10.380 回答