Bonjour,
Ma JTable tblProjet est liée à la table t_projet d'une base de donnée cette table a une clé primaire incrémentée automatiquement.
Un bouton permet d'ajouter un projet.
Tout va bien charger une première fois la JTable et pour mettre à jour la base de donnée avec une requête Insert.
La partie connexion fonctionne bien
C'est la JTable qui ne se rafraichis pas.
Voici une partie de 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
40
41
42
43
44
45
46
47
DefaultTableModel modelPont = new DefaultTableModel(GetDataPont(0),columnsPont);
        tbl_Pont = new JTable(modelPont);
        tbl_Pont.setBackground(Color.LIGHT_GRAY);
        tbl_Pont.setForeground(Color.BLACK);
        scrollPane_1.setViewportView(tbl_Pont);
 
protected String[][] GetData() {
 
        // Fait un tableau des projets à inserer dans le model de la jTable
        qry = "SELECT * FROM t_projet";
        res= Connexion.getResultSet(qry);
        try {
            res.last();
 
            String data[][] = new String[res.getRow()+1][4];
            res.beforeFirst();
            int i = 0;
 
            while (res.next()) {
                int id = res.getInt(1);
                String noProjet = res.getString(2);
                String lot = res.getString(3);
                String titre = res.getString(4);
                data[i][0] = id + "";
                data[i][1] = noProjet;
                data[i][2] = lot;
                data[i][3] = titre;
                i++;
            }
            return data;
 
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return null;
 
btnAjoutProjet = new JButton("Ajouter");
        btnAjoutProjet.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                Connexion.majTbProjet(Integer.parseInt(txtNoProjet.getText()), txtLot.getText(), txtTitreProj.getText());
                fermerAjout();
                tblProjet.getModel();
                modelProjet.fireTableDataChanged();
            }
        });
    }
Voici l'erreur que j'observe:

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 10
at java.base/java.util.Vector.elementData(Vector.java:731)
at java.base/java.util.Vector.elementAt(Vector.java:469)
at java.desktop/javax.swing.table.DefaultTableModel.getValueAt(DefaultTableModel.java:660)
L'index devrait être 9 au lieu de -1

Merci d'avance.