2015-05-27 12 views
0

我有一個Grails(2.4.3)應用程序,它使用PersistenceListener來偵聽GORM事件。自定義eventlistener中的Grails ConcurrentModificationException

PersistenceListener工作正常。在PreUpdate事件中,它調用一個服務(注入),它在相關對象上執行findAll。在這裏,我正在收集更新第三方系統的價值。該服務根本不會更改任何對象值,包括event.entityObject。

運行PreUpdate並在控制器上調用instance.save後,它會收到ConcurrentModificationException。

如果我刪除/註釋相關對象的findAll,異常消失。

我懷疑這與Hibernate有關。相關的問題都是討論迭代器並使用它們的刪除方法。這裏我沒有刪除任何值,只是試圖獲取相關的對象。

回答

0

您是否在JDK 8上甚至排序也被視爲與JDK 7不同的修改操作?

這可能不是答案;但我不得不將它寫成答案,因爲我沒有評論權限。如果它不相關,請刪除它。

+0

當您有足夠的代表時,您可以添加評論。你會在那裏... –

+0

謝謝。它是JDK 7.即使它不是一個乾淨的解決方案,我仍然使用GORM事件。 – Umapathy