IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hibernate Java Discussion :

Problème "No Session"


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2005
    Messages
    513
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 513
    Par défaut Problème "No Session"
    Bonsoir a tous,
    voila débutant des développements avec Hibernate, j'ai actuellement une erreur que je trouve bizar et que j'aimerais que l'on m'explique. En fait tout simplement je récupère un utilisateur en BDD via une classe DAO, qui me retourne en fait un bean utilisateur. Le problème c'est que je ne sais pas pourquoi, j'ai une exception No Session qui est lancé par Hibernate lorsque je tente de manipuler mon bean dans ma Servlet.

    Or si je met dans ma DAO un System.out.println( user.toString() ), alors je n'ai aucune exception qui est lancé et tout mon processus se déroule correctement.

    Voici mon le code de ma DAO:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    	public Utilisateur findByPrimaryKeyUtilisateurDAO(String id)
    	{
    		Session session = HibernateDAOFactory.creerConnexion();
    		Utilisateur user = null;
     
    		try
    		{ user = (Utilisateur)session.load(Utilisateur.class, id); }
    		catch(HibernateException e)
    		{
    			[...]
    		}
    		finally
    		{
    			try
    			{ HibernateUtil.shutdown(); }
    			catch(HibernateException e)
    			{ e.printStackTrace(); }
    		}
     
    		return user;
    	}
    Voila, est ce quelqu'un pourrait m'aider à comprendre le pourquoi de mon exception ?

    Merci par avance.

  2. #2
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2005
    Messages
    513
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 513
    Par défaut [LazyInitializationException] could not initialize proxy - no Session
    Voila en fait j'ai toujours mon problème, je ne parviens pas à trouver de solution.

    Néanmoins, j'ai un peu plus isolé le problème. J'ai l'exception, uniquement lorsque je tente d'accéder à mon Utilisateur retourné dans ma vue. Je ne parviens pas a résoudre le problème.

    Je met ci-dessous mon fichier de configuration Hibernate pour voir si le problème ne vient pas de là:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE hibernate-configuration
        PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
     
    <hibernate-configuration>
        <session-factory >
     
    		<!-- local connection properties -->
    		<property name="hibernate.connection.url">jdbc:mysql://localhost/blist</property>
    		<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    		<property name="hibernate.connection.username">root</property>
    		<property name="hibernate.connection.password"></property>
    		<!-- property name="hibernate.connection.pool_size"></property -->
     
    		<!-- dialect for MySQL -->
            <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
     
            <property name="current_session_context_class">thread</property>
            <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
            <property name="show_sql">true</property>
            <property name="hibernate.use_outer_join">true</property>
     
    	<mapping resource="com/subtek/blist/hibernate/bean/utilisateur.hbm.xml" />	
        </session-factory>
    </hibernate-configuration>

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2005
    Messages
    513
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 513
    Par défaut
    bon ben je viens de trouver la solution, dans mon fichier de mapping utilisateur.hbm.xml, il fallait mettre dans la définition de la classe l'attribut lazy="false".

    et ainsi tout fonctionne bien!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Problème avec un double quote
    Par wormseric dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 26/01/2007, 14h44
  2. [Wamp] Problème d'insertion avec quote d'un formulaire
    Par cyberdevelopment dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 20/08/2006, 18h55
  3. [SQL-Server] Problèmes de guillemets et quotes dans un INSERT
    Par gregb34 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/05/2006, 09h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo