Le 11/05/2012 18:42, Arnaud Thimel a écrit :
Voici un peu ce que nous avons fait cette semaine.
Update semaine 20 : Amélioration du chargement de la configuration JPA : Reprise des subtilités de ToPIA 2. Implémentation des events sur Hibernate uniquement. Ça semble compromis en pur JPA. D'une part on est pas sur du pur JPA, d'autre part on a besoin que l'entité contienne le TopiaContext, donc bof bof bof. (cf thread dédié) Retrait des messages d'exception i18n. Implémentation du "replicate" sur Hibernate. Tony a bien avancé sur la génération des mappings et a ajouté la possibilité d'utiliser les mappings HBM ou ORM en fonction de la conf. Il y a maintenant un fichier TopiaEntityAbstract-orm.xml qui déclare une mapped-superclass avec les topiaId|Version|... Nous avons donc pu faire les premiers tests avec les mappings ORM et ... c'est pas beau à voir :( En effet, comme on génère le topiaId, Hibernate pense que c'est une entité détachée (existante mais non liée à une session), or Hibernate refuse qu'on fasse un persist sur un objet détaché : "detached entity passed to persist: org.nuiton.topia.tck.legacy.entities.PersonImpl" Tony a réussit à contourner le soucis en mettant la génération du topiaId dans un EventListener prePersist. À priori ça fonctionne, mais seulement avec les mappings ORM. En soit, ça n'est pas déconnant, faut voir si c'est pérenne... Arnaud