從我的客戶端應用程序中,我想用一個EJB方法調用存儲和刷新,而不是對兩個方法進行兩次調用。我做了一個EJB方法,使其調用其他兩個EJB方法,它看起來很簡單,就像這樣:使用EJB 2.0和JPA(Toplink)問題存儲和刷新對象
public ZippedObjectWrapper saveAndRefresh(final Item p_item) {
Long itemSavedId= save(p_item);
return refresh(itemSavedId);
}
的問題是Toplink的這並不讓我讀出的數據,並在刷新部件拋出一個異常:
異常[TOPLINK-7123] 異常情況說明:在此UnitOfWork上調用了成功的writeChanges()。由於提交過程已經開始但尚未最終確定,現在唯一支持的操作是commit,commitAndResume,release,任何非對象級別的查詢或SQLCall執行。目前不允許執行executeQuery(ObjectLevelReadQuery)操作。
有什麼建議嗎?
編輯:更改方法簽名。
請使用英文變量名稱。對於大多數SO用戶來說這是不可能的。 – atamanroman 2011-03-11 09:05:44
你如何管理交易? – axtavt 2011-03-11 09:44:44
你究竟是什麼意思? – Andrija 2011-03-11 09:51:28