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的例子,它是一個靜態類變量嗎?我有這樣的感覺,你正試圖做一些可以做得不同的事情 –