【发布时间】:2011-08-27 13:24:00
【问题描述】:
我有一个 EJB,它的方法(除其他外)保持 JPA 实体。如果方法抛出错误,则事务回滚,实体不持久化。
但是,我确实希望无论在 EJB 方法中可能发生的任何异常情况如何,都可以保留该实体。
如果重要的话,我正在使用 WebSphere 7.0、EJB3.0、JPA 1.0(WAS 中的 OpenJPA)、DB2。
我尝试在 EJB 之上设置@TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED);这样,即使没有例外,实体也不会持久化。我也尝试过自己提交事务(em.getTransaction().commit()),但是 getTransaction() 抛出异常(因为事务是由容器管理的)。
【问题讨论】:
标签: jpa jakarta-ee ejb java-ee-6