Quote Originariamente inviata da andbin Visualizza il messaggio
Ho fatto una ricerca veloce ed ho trovato subito questo. Da quanto ho capito è l'utilizzo della specifica JSR-295 "Beans Binding". Tra l'altro non ho trovato (ma non ho cercato più di tanto comunque) un documento ufficiale sulla specifica, quindi mi viene da pensare che sia qualcosa di non più tanto portato avanti e/o obsoleto.
Sì è lo stesso link che stavo leggendo io, ho fatto anche delle prove, ma direi che è meglio scartarlo, anche perché genera un mucchio di codice che non comprendo e mi sembra pure pesantino, ci mette più tempo a caricare la form dove sono abilitate quelle cose.


Quote Originariamente inviata da andbin Visualizza il messaggio
Supponendo selezione "singola" (giusto come caso più semplice), il punto fondamentale è la registrazione di un ListSelectionListener. Quando la selezione nella lista1 cambia, prendi il valore selezionato e lo usi in qualche modo per ottenere i dati da mettere nella lista2.
Il punto critico è come/dove vengono presi i dati per la lista2. Se fossero semplici strutture dati (es. ad ogni elemento della lista1 è associato un array/List con altri dati), sarebbe relativamente semplice "legare" le due liste, eventualmente facendo un po' di "design" sulle classi in modo che sia, magari, abbastanza facilmente riutilizzabile.
Se si trattasse di accedere ad un DB per prendere i dati, bisognerebbe fare altre valutazioni. Es. come viene usato il valore selezionato? Fa solo da "filtro" in una query ben precisa? O addirittura va a cambiare radicalmente la query?
La selezione è singola. Guarda ti metto uno screenshot di come è la maschera attualmente che forse vale più di mille parole:
Untitled-1.jpg
La jlist a sx è quella delle categorie. Se clicco su una categoria (selezione singola) nella jlist di dx mi compaiono i prodotti di quella categoria.
I dati nella lista2 (quella dei prodotti) vengono presi da un vector che viene generato a seconda dell'id del menu selezionato nella lista1, quindi ho un metodo che mi ritorna questo vettore a seconda dell'id della categoria che gli passo.
I dati sono in un db mysql.
Tanto per chiarire meglio questo è il metodo che chiamo per riempire la jlist2:

codice:
    private void reloadProductList() {
        modelProductList.clear();
        if (newMenuIsSaved) {
            Vector<Product> productVoices = DBConnection.fillProductList(newMenuId);
            for (int i = 0; i < productVoices.size(); i++) {
                modelProductList.addElement((Product) productVoices.get(i));
            }
        } else {
            Vector<Product> productVoices = DBConnection.fillProductList(selectedMenuId);
            for (int i = 0; i < productVoices.size(); i++) {
                modelProductList.addElement((Product) productVoices.get(i));
            }

        }
    }
Non ho capito questa tua domanda:
"Es. come viene usato il valore selezionato? Fa solo da "filtro" in una query ben precisa? O addirittura va a cambiare radicalmente la query"