Bonjour,
je dispose d'une application web(jsf) qui permet de démarrer un traitement (traiter des lignes dans une base de donnée).une fois la ligne active est traité on passe la valeur traiter=oui. au bout d'un moment je voulais stopper le processus pour le démarrer plus tard mais j'ai pas pu le faire.J'ai ajouté un flag boolean arretSVP= false mais ça n'a pas marché.
voici mon code:
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 public class Eleve{ public static boolean arreteSilTePlait=true; //getter and setter public void editEleve(Eleve e) { demmarerService("seb"); } demmarerService(String txt){ while (arreteSilTePlait==true) { String sql="select id,prenom,nom from "+txt+" where traiter='non'"; try{ connection = com.Database.getConnection(); if(connection !=null && !connection.isClosed()){ stmt1= connection.createStatement(); rset1= stmt1.executeQuery(sql); while(rset1.next() && arreteSilTePlait){ id= rset1.getString("id"); // traitement et passer traiter=oui de l'eleve if (arreteSilTePlait==true){ break;} }catch(Exception e ){ e.printracktrace(); } public boolean stopp() { System.out.println("pausing process...."); arreteSilTePlait=false; System.out.println("arretSilTePlait= "+arreteSilTePlait); // t.stop(); return arreteSilTePlait; } }
si je click sur pause le traitement n'est pas effectué et le processus n'est pas mis en pause.
Aidez moi svp
Partager