EJB事务假设我有一个实现所需的交易方法的会话bean:与调用POJO
@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的例子,它是一个静态类变量吗?我有这样的感觉,你正试图做一些可以做得不同的事情 –