我有一个企业应用程序,其中包含一些 JPA 2.1 实体。我通过 WebLogic 中注册的 JNDI 数据源访问数据库。JPA 实现是 Hibernate 5.2.17。我正在使用 Spring Data JPA 来简化数据库访问。相关实体:public class PermissionEntity implements Serializable { private static final long serialVersionUID = -3862680194592486778L; @Id @GeneratedValue private Long id; @Column(unique = true) private String permission; @ManyToMany private List<RoleEntity> roles;}当我尝试插入新实体时,我从 WebLogic 收到以下异常:weblogic.transaction.internal.AppSetRollbackOnlyException: setRollbackOnly called on transaction.其他实体不会发生此错误。在这个和其他 EAR 中都没有,而理论上,所有配置都是相同的。
1 回答
红颜莎娜
TA贡献1842条经验 获得超12个赞
这可能是违反约束或其他原因。为了了解问题,请在托管服务器启动参数上设置以下标志:
-Dweblogic.transaction.allowOverrideSetRollbackReason=true
这样,您应该得到一个错误堆栈,其中包含有关容器事务失败的更多相关信息。
添加回答
举报
0/150
提交
取消