Bonjour

Je fais un logiciel de gestion de matériel mais j'ai un souci avec ma JTable.
Avec le code ci-dessous, j'obtiens une JTable remplie avec les noms des colonnes mais aucune ligne n'apparaît.
J'ai testé la requète sous MS ACCESS. elle me renvoie 8 lignes.
Sur la console, rsliste.isEmpty = true, mais je ne vois pas pourquoi.


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
Statement stliste;
ResultSet rsliste;
int type = ResultSet.TYPE_SCROLL_INSENSITIVE;
int mode = ResultSet.CONCUR_UPDATABLE;
 
stliste = uneConnexionBD.MaConnexion.createStatement(type, mode);
String req = " SELECT * FROM Materiel";
 
//Materiel.numinv,Materiel.designation,Materiel.modele,Materiel.nompiece," +
//" Materiel.dateachat,Materiel.coutht,Materiel.amortissement FROM Materiel";
 
rsliste = stliste.executeQuery(req);
 
// Chargement des données dans la JTable				
ResultSetMetaData MesMetaDonnees;
// le nombre de colonnes de table
int NbCol;
// Déclaration des variables devant contenir le nom des colonnes et des données
Vector NomCol, Donnees;
// recupération du nombre de colonnes
MesMetaDonnees = rsliste.getMetaData();
NbCol = MesMetaDonnees.getColumnCount();
 
// Recupération des noms des colonnes
NomCol = new Vector();
for(int i = 0; i < NbCol; i++){
           NomCol.addElement(MesMetaDonnees.getColumnLabel(i + 1));	
}				
// Recupération des données de la table
Donnees = new Vector();
while (rsliste.next()){
	Vector NewDonnees = new Vector();
	for(int j = 1; j <= NbCol; j++){
		NewDonnees.addElement(rsliste.getObject(j));
	}
             Donnees.addElement(NewDonnees);
}
System.out.println(Donnees.isEmpty());
JTable tb = new JTable(Donnees, NomCol);
return tb;