Le 27/10/2010 11:57, Julien NICOLAS a écrit :
Merci pour cette réponse si rapide :)
Malheureusement nous ne voyons pas pourquoi faire un new ArrayList avec workstation.getFlow() en paramètre actionnerait un mécanisme Hibernate pour le chargement des données.... Comme tu le dis plus haut, les données n'étant pas chargées (Lazy en cause), la fonction getFlow() renvoie une collection vide.... Que ce soit avec la ArrayList ou la liste d'hibernate, si la collection est vide, c'est qu'il n'y a pas de données a charger.
Les flow sont-t-ils bien lié (topiaId) au workstation en question ? (en regardant vite fait votre code, les flows sont créé non lié et ils sont seulement lié lorsqu'ils sont démarré).
Pourrions-nous avoir quelques explications supplémentaires ou liens nous permettant de comprendre le fonctionnement ? J'ai pas trouver de doc rapidement. Le principe des LazyProxy hibernate est d'aller chercher l'information "à la demande" tant que la session est ouverte (sinon, LazyInitialisationException)
C'est proxy hibernate implémentent l'interface "List" standard donc, on ne voit pas la différence dans l'application. Après, pour la mécanique interne, je n'ai jamais été voir, mais j'imagine que les méthode de ce proxy font les requêtes SQL qui vont bien pour renvoyer les éléments demandés. -- Éric <chatellier@codelutin.com> Tel: 02 40 50 29 28 http://www.codelutin.com