我嘗試了幾個事情w/JOTM和有關如何工作的一些通用目的問題。我列出了事件的順序,以便對發生的事情進行明確的總結。爲什麼不從XAResource拋出XAException仍然允許事務提交成功?
- 創建TX
- 爭取資源
- tx.commit
- resource.start
- resource.end拋出XA EXCEPTION
- resource.commit
即使資源.end拋出一個XAException tx commit仍然可以工作,這對我來說顯然是錯誤的。如果它沒有將tx標記爲回滾點,那麼拋出異常的點是什麼...
所有tx管理器是否都像這樣工作,或者拋出XAException失敗tx?