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

Frameworks Web Java Discussion :

no session or session was closed


Sujet :

Frameworks Web Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Points : 15
    Points
    15
    Par défaut no session or session was closed
    Bonjour,

    J'envisage toujours le même problème avec Hibernate, je m'explique:

    Je récupère une liste d’évènement de ma BDD, dans un 'Set', dans chq evnt il y a des participants je dois afficher chq evnt suivi de sa liste de participant, le problème est la: qd j'essaye d’accéder a la liste des participant l'exception suivante se lève:

    org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: metier.Evenement.Participants, no session or session was closed

    Les fichiers de mapping:

    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
     
    <class name="Evenement" table="event" lazy="true">
    		<id name="code" type="integer" column="code">
    			<generator class="native" />
    		</id>
     
    		<property name="nom" />		
    		<property name="date" type="date"/>
     
                   <set name="Participants" inverse="true" cascade="all" fetch="join">
    			<key>
    				<column name="code" />
    			</key>
    			<one-to-many class="Membre" />
    		</set>
    </class>
    Servlet:

    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
     
     
    public class ActionChargerClssmnt extends Action{	
     
    	public ActionForward execute(ActionMapping mapping, ActionForm form,
    			HttpServletRequest request, HttpServletResponse response)
    			throws Exception {
    		ArrayList<Evenement> tab1;
     
    		DAOEvent dao = DAOEventHBM.getInstance();
     
    		tab1 = dao.load();	
     
     
    		request.setAttribute("Liste_Evnt", tab1);
    		return mapping.findForward("succes");
    }
    Jsp:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <logic:iterate id="clssmnt" name="Liste_Cat" scope="request">			
    			<strong> <bean:write name="clssmnt" property="nom" />:	</strong>
    			<br/>	
     
    			<logic:iterate id="score" name="clssmnt" property="classements">			
    			Id membre: <bean:write name="score" property="code.codeMbr" />, 
    			 son score: <bean:write name="score" property="score" />
    			<br/>	
     
    			</logic:iterate>
    	</logic:iterate>

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Points : 1 745
    Points
    1 745
    Par défaut
    T'as du te tromper de JSP ou de DAO car tu nous montre un DAO qui charge des Evenement et une JPS qui affiche des catégories/classement.


    Cela dit, ton problème vient du fait que tes relations sont en mode LAZY. Une fois au niveau WEB tes entités sont détachées de ta session et quand tu accède à ta propriété tu as l'exception LazyInitializationException.

    Soit tu les passes en mode EAGER pour que tout soit chargé dès le départ.
    Soit tu laisses en mode LAZY et tu effectues l'accès à la propriété dans ta session avant de le faire au niveau web.

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/01/2015, 19h05
  2. Réponses: 1
    Dernier message: 30/03/2013, 14h53
  3. no session or session was closed
    Par Kirikou12 dans le forum Frameworks Web
    Réponses: 3
    Dernier message: 16/07/2012, 13h46
  4. Réponses: 4
    Dernier message: 02/03/2012, 14h11
  5. [Session Context] session non transmise
    Par patricetouner dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 29/12/2004, 14h56

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