2015-04-04 29 views
0

我有兩個實體:User和UserGroup。它們之間的關係是@ManyToMany,我使用envers來審計這些實體,類層次@Audited註釋放在它們兩個上。然而,當我嘗試執行此查詢:Hibernate Envers:初始化相關對象的ListProxy

AuditReader reader = AuditReaderFactory.get(em); 
AuditQuery query = reader.createQuery().forRevisionsOfEntity(User.class, false, true); 

Returnted用戶實體擁有的用戶羣體「org.hibernate.envers.entities.mapper.relation.lazy.proxy.ListProxy」集合大小等於爲零。在這些列表代理上調用size()方法不會初始化它們。任何幫助將不勝感激。

回答

0

問題如下:當數據庫中已經存在用戶和用戶組時,我開始審計實體。假設我正在修改某些用戶的組。此修改引起User_AUDUser_UserGroup_AUD表中的相應行的添加,但UserGroup_AUD表仍爲空。後來,當我查詢User實體的修訂版時,由於在UserGroup_AUD表中沒有關於這些用戶組的記錄,因此無法找到相關的UserGroup實體。