2012-10-25 70 views
0

我正在嘗試將Toplink和CMT消息驅動bean集成。我的MDB是CMT。當我嘗試使用unitofwork commit時,它錯誤地指出全局事務存在,因此不能進行本地提交。在研究toplink之後,他們提出了以下建議。使用外部連接池並使用getactiveUnit工作來提交。我們使用oracle 10.1.3容器進行連接池和外部事務控制器(OC4J事務控制器)。當我更改爲getActiveUnitWork()。commit時,由於空活動工作單元,我得到空指針。我的理解是容器在執行MDB消息時啓動一個事務。因此,鏈接頂尖的工作單元應該將工作單位與外部交易聯繫起來。 Toplink GetActive工作單元方法應該只在沒有外部事務存在時才返回null。我不知道如何解決這個問題或者什麼是錯的。我很感激這方面的幫助。Toplink和CMT消息驅動bean

謝謝。 TZ

回答

0

確保您已正確設置了您的會話的ExternalTransactionController,並且存在活動的JTA事務。