【发布时间】:2012-11-10 15:18:17
【问题描述】:
假设我有一个实现 REQUIRED 事务方法的会话 bean:
@TransactionAttribute(TransactionAttributeType.REQUIRED)
public void doTransaction() throws Exception {
try {
...
// call to non-EJB bean object (not session, stateless or entity bean)
} catch (Exception e) {
context.setRollbackOnly();
throw e;
}
}
假设 doTransaction() 改变了非 bean 对象的内部状态,并且失败了。回滚是否恢复非bean的原始状态? 如果不是,处理这种情况的推荐方法是什么? (或者不允许事务中的 POJO 调用?)
【问题讨论】:
-
你能举一个这个pojo的例子吗,它是一个静态类变量吗?我有一种感觉,您正在尝试做一些可以以不同方式完成的事情