J'utilise un fichier modèle à savoir Document.java et Document.hbm.xml à partir d'un fichier jar.Obtention d'une exception d'initialisation paresseuse - aucune session lors de l'accès aux propriétés d'un objet modèle
Cette classe de document a un objet:
class Document{
private Signature signature;
// other fields
// getter setters
}
avec cartographie HBM comme suit:
<many-to-one name="signature" column="SIGNATURE_ID" class="com.model.Signature"/>
Maintenant que je suis accès à ces fichiers de jar donc je préfère ne pas les changer.
Je suis SOUSCRIPTION l'objet de document comme suit:
Query qry = getSessionFactory().getCurrentSession().createQuery("from
Document where id = :id");
qry.setParameter("id" , id);
return (Document)qry.list().get(0);
Mais maintenant, quand je prends un objet Signature par le code suivant:
J'ai une classe utilitaire Utils.java donc je suis en train d'accéder comme:
Utils utils = new Utils();
utils.getSignatures(document);
et cette méthode getSignatures dans la classe Utils est
public Signatures getSignatures (Document document){
Signature sign = document.getSignature();
// working on sign object
return sign;
}
Alors maintenant, comme dans le code ci-dessus chaque fois que je fais document.getSignature() Je reçois l'erreur suivante:
org.hibernate.LazyInitializationException: could not initialize proxy - no Session
S'il vous plaît ajouter un morceau de code où vous obtenez l'exception. Accédez-vous à cet objet dans une transaction? – ledniov
Monsieur, j'ai mis à jour la question – Tarun