Ok...però ora c'è il problema dei totali!
Il compilatore mi dà errore in queste parti di codice in rosso:
codice:
import javax.swing.table.*;
import javax.swing.*;

public class GestioneTabellaOrdini {
    private ListNode CLIENTI, PRODOTTI;
    private JTable table;

    public GestioneTabellaOrdini(ListNode CLIENTI, ListNode PRODOTTI) {
        this.CLIENTI = CLIENTI;
        this.PRODOTTI = PRODOTTI;
        this.table= new JTable();
 }
    
    public JTable creaTabellaOrdini() {
        
        GestioneProdotti gp = new GestioneProdotti();
        String[] nomiProdotti = gp.getNomiProdotti(PRODOTTI);
        int lunghezza = nomiProdotti.length;
        String[] Prodotti = new String[lunghezza + 1];
        Prodotti[0] = "";
        for (int i=1; i<=lunghezza; i++){
            Prodotti[i] = nomiProdotti[i-1];
        }
        
        GestioneClienti gc = new GestioneClienti();
        String[] nomiClienti = gc.getNomiClienti(CLIENTI);
        int lung = nomiClienti.length;
        String[] Clienti = new String[lung + 2];
        for (int i=0; i<lung; i++) {
            Clienti[i] = nomiClienti[i];
        }
        Clienti[lung] = "";
        Clienti[lung + 1] = "TOTALI";
        
        Object[][] datiCelle = new Object[Clienti.length][Prodotti.length];
        
        /** Costruisco la griglia mettendo in prima colonna i clienti. */
        for (int i=0; i<Clienti.length; i++) {
            datiCelle[i][0] = Clienti[i];
            for (int k=1; k<Prodotti.length; k++) {
                datiCelle[i][k] = "";
            }
        }
        
        TabellaOrdini myTable = new TabellaOrdini(datiCelle, Prodotti);
        myTable.setLastRow(Clienti.length-1);
        
        table.setModel(myTable);
        return table;
        
        }
        
        public void tablePropertyChange(java.beans.PropertyChangeEvent evt) {
            
            int indiceRiga = table.getSelectionModel().getAnchorSelectionIndex();
            int indiceColonna = table.getColumnModel().getSelectionModel().getAnchorSelectionIndex();
            int righe = table.getModel().getRowCount()-2;
            float somma = 0;
            
            if (indiceColonna != -1) {
                for (int i=0; i<righe; i++) {
                    Object valore = table.getValueAt(i, indiceColonna);
                    valore = valore!=null && !valore.equals("") ?
                        valore.toString().repleaceAll(",","\\.") : "0";
                    somma = somma + Float.parseFloat(valore.toString());
                }
                table.setValueAt(somma, table.getModel().getRowCount()-1, indiceColonna);
            }
        }
        
        table.addPropertyChangeListener(new java.beans.PropertyChangeListener() {
            public void propertyChange(java.beans.PropertyChangeEvent evt) {
                tablePropertyChange(evt);
            }
        });
       
    
    
}
GRAZIE MILLE!