我已经成功创建了Bean Managed Transaction示例,但它确实有效。 我设置了两个程序,A Java程序称之为B C ++程序,每个程序都有自己的事务。
我唯一要做的就是
- “@ TransactionManagement中(TransactionManagementType.BEAN)
- UserTransaction tx = this.ejbContext.getUserTransaction()
- tx.begin();
- tx.commit();或者tx.rollback();
醇>
但是,当我想将ContainerManagedTransaction与“TransactionManagementType.CONTAINER”一起使用并删除所有上述方法和类时......但它不起作用。 所以,我试过使用“TransactionAttributeType.MANDATORY”,它给出了一个错误..比如
EJB异常:“全局tx必需” 在com.ibm.ejs.csi.Mandatory.preInvoke(Mandatory.java:47) ...
您能否给我一个示例或指导,以了解如何在ContainerManagedTransaction中配置XA事务?
谢谢..
答案 0 :(得分:0)
您需要使用其他注释,REQUIRED或REQUIRES_NEW才能使其正常工作。
MANDATORY需要来自调用方法的一些事务上下文,因此不能用于开始新事务。