Bonjour,

Je reprend un projet existant et je constate que le code suivant est bloquant :

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
 
public List<Affaire> findByCriteria(Affaire affaire) {
		long start = System.currentTimeMillis();
		System.out.println("findByCriteria(Affaire "
				+ ReflectionToStringBuilder.toString(affaire) + ")");
		Criteria criteria = getSession().createCriteria(Affaire.class);
		Iterator<Auteur> auteurs = affaire.getAuteurs().iterator();
		Iterator<Acteur> requerants = affaire.getRequerants().iterator();
		Iterator<Commune> communes = affaire.getCommunes().iterator();
 
		if (communes.hasNext()) {
			Criteria testOneToMany = criteria.createCriteria("communes");
			testOneToMany.add(Restrictions.idEq(communes.next().getId()));
		}
 
		if (auteurs.hasNext()) {
			Criteria testOneToMany = criteria.createCriteria("auteurs");
			testOneToMany.add(Restrictions.idEq(auteurs.next().getId()));
		}
 
		if (requerants.hasNext()) {
			Criteria testOneToMany = criteria.createCriteria("communes");
			testOneToMany.add(Restrictions.idEq(requerants.next().getId()));
		}
 
		if (affaire.getNoAffaire() != null
				&& affaire.getNoAffaire().length() > 0)
			criteria.add(Expression.eq("noAffaire", affaire.getNoAffaire()));
 
		if (affaire.getType() != null)
			criteria.add(Expression.eq("type", affaire.getType()));
 
		// TODO requerant & auteur (criteria)
 
		List<Affaire> list = criteria.list();
		System.out.println("Result in " + (System.currentTimeMillis() - start)
				+ " ms :\n" + ReflectionToStringBuilder.toString(list));
		return list;
 
	}
:13:48 DEBUG - AuteurDaoImpl:77 - findByCriteri
,nomPersonneAutorisee=<null>,numeroRegistre=0])


quelqu un voit il la cause ?

d avance merci