Bonjour
j'utilise une boucle for pour stocker plusieurs objets issues de ma datatable in JSF.
mais hibernate ne sauvegarde que le premier objet dans la base, les autres ne sont pas sauvegardés.
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 
session =sessionFactory.openSession();
 
			org.apache.log4j.BasicConfigurator.configure();
			tx = session.beginTransaction();		
			Employe emp=new Employe();
			Periode period=new Periode();
 
 
 
			Query q1 = session.createQuery("from Employe where idEmploye = :emp_id");
			q1.setParameter("emp_id", emp_id);
		    emp= (Employe) q1.list().get(0);
 
		    Query q3 = session.createQuery("from Periode where idPeriode = :period_id");
		    q3.setParameter("period_id", period_id);
		    period= (Periode) q3.list().get(0);
for (int i=0;i<listcriteres.length;i++)
			{
 
		    Notation Nota=new Notation();
		    NotationId Nota_id= new NotationId();
		    Critere crit=new Critere();
		    Hibernate.initialize(Nota_id) ;
		    Hibernate.initialize(Nota) ;
		    Hibernate.initialize(crit) ;
		    crit_id=listcriteres[i].getInt1();
		    note=listcriteres[i].getInt3();
 
    	    Query q2 = session.createQuery("from Critere where idCritere = :crit_id");
		    q2.setParameter("crit_id", crit_id);
		    crit= (Critere) q2.list().get(0);
		    Nota_id.setEmploye(emp);
		    Nota_id.setPeriode(period);
		    Nota_id.setCritere(crit);
		    Nota.setId(Nota_id);
		    Nota.setNote(note);
 
		    session.save(Nota);
 
		    i++;
 
			}
		    //session.save(Notations);
		    tx.commit();
merci d'avance pour votre aide