La faccenda sembra facile, ma mi ci sto impazzendo e non trovo l'errore.
Spero che uno di voi esperti mi possa aiutare

Allora io ho 2 arrayList

ArrayList<Richiesta>vecchia_richiesta = new ArrayList<Richiesta>();
ArrayList<Richiesta>nuova_richiesta= new ArrayList<Richiesta>();

poi interrogo il db..

vecchia_richiesta=daoFactory.richiestaDAO().dettag liRichiesta(oldreq.getIDRequest(), 1, connection);

nuova_richiesta=daoFactory.richiestaDAO().dettagli Richiesta( nuovoIDReq, 1, connection);

In questo modo nell'array vecchio mi ritornano id della tabella del database ,e 2 informazioni di cui ho bisogno(quindi facciamo per esempio:
1- Pippo Cane
2- Topolino topo
3 Paperino Papero

Con l'array uovo mi ritornano solamente gli id della tabellai ma senza informazioni che dovro in seguito copiarci.(quindi mi tornano 4-5-6)

E ora credo che qui avvenga il mio errore(nel 2 ciclo for penso)

codice:
for (int i = 0; i <vecchia_richiesta.size(); i++) {
    for (int j = 0; j < nuova_richiesta.indexOf(i); j++) {
         daoFactory.richiestaDAO().updateDettagli( nuovoIDReq,nuova_richiesta.get(j).getIDRequestHardware(),vecchia_richiesta.get(i).getModel(),vecchia_richiesta.get(i).getProject(), connection );

    }
}
dove gli passo le chiavi esterne idreq(che ho diciamo di default) e idreqhardware
che è l'id della tabella dell array nuovo, in cui copiare i dettagli del vecchio, che gli passo accanto.

La query non fa altro che fare un update alla tabella .

Ora il mio problema è che non fa un bel niente. Quindi non copia.
Spero di essere stato chiaro. Qualcuno puo aiutarmi??
Grazie