En voici un qui me rend perplexe. J'essaie d'implémenter une structure basique d'Hibernate DAO, mais j'ai un problème.hibernate: LazyInitializationException: impossible d'initialiser le proxy
Voici le code essentiel:
int startingCount = sfdao.count();
sfdao.create(sf);
SecurityFiling sf2 = sfdao.read(sf.getId());
sfdao.delete(sf);
int endingCount = sfdao.count();
assertTrue(startingCount == endingCount);
assertTrue(sf.getId().longValue() == sf2.getId().longValue());
assertTrue(sf.getSfSubmissionType().equals(sf2.getSfSubmissionType()));
assertTrue(sf.getSfTransactionNumber().equals(sf2.getSfTransactionNumber()));
Il échoue sur la troisième assertTrue où il essaie de comparer une valeur de sf à la valeur correspondante de SF2. Voici l'exception:
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:86)
at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:190)
at com.freightgate.domain.SecurityFiling_$$_javassist_7.getSfSubmissionType(SecurityFiling_$$_javassist_7.java)
at com.freightgate.dao.SecurityFilingTest.test(SecurityFilingTest.java:73)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)
eu le même problème et paresseux = false le fixe . Merci – autonomatt
maintenant dans mon cas j'utilise 'lazy = false' pour tous les niveaux de dao, mais il s'avère que les performances de l'application est lent à cause de cela, a essayé de mettre' lazy = true', mais maintenant lazyException sont levées, des suggestions comment cela peut être fixé. – Rachel
pakore, pourriez-vous indiquer pourquoi n'est pas la solution et comment le comprendre? – Victor