2015-04-04 1 views
0

J'ai deux entités: User et UserGroup. La relation entre eux est @ManyToMany et j'utilise envers pour auditer ces entités, l'annotation @Audited de niveau classe est placée sur les deux. Cependant, lorsque je tente d'exécuter cette requête:Hibernate Envers: initialisation de ListProxy d'objets connexes

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

entités utilisatrices Returnted ont des collections « org.hibernate.envers.entities.mapper.relation.lazy.proxy.ListProxy » de groupes d'utilisateurs avec une taille égale à zéro. L'appel de la méthode size() sur ces proxies de liste ne les initialise pas. Toute aide serait appréciée.

Répondre

0

Le problème était le suivant: J'ai commencé à auditer des entités alors qu'il y avait déjà des utilisateurs et des groupes d'utilisateurs dans la base de données. Disons que je modifiais certains groupes d'utilisateurs. Cette modification a entraîné l'ajout de lignes correspondantes dans les tables User_AUD et User_UserGroup_AUD, mais la table UserGroup_AUD était toujours vide. Plus tard, lorsque je demandais des révisions de User entité, il n'a pas été en mesure de trouver UserGroup entités connexes, car il n'y avait aucun enregistrement dans la table UserGroup_AUD sur ces groupes d'utilisateurs.