Oi gente, blz?
Estou com uma dúvida em uma negócio:
Tenho uma interface em swing que conecta-se a um banco de dados oracle.
Faço uma consulta no banco e retorno para a interface um arraylist bidimensional contendo dados da minha consulta. Populo o meu jList da seguinte maneira:
private void listMeter(JList jl) {
DefaultListModel meters = ( DefaultListModel ) jl.getModel();
ArrayList listMeter = new ArrayList();
try {
listMeter=(ArrayList)mn.sQuery();
for(int i =0; i<listMeter.size();i++) {
meters.addElement((String)((ArrayList)listMeter.get(i)).get(0));// 1 valor de cada array é o cadastro do medidor
}
} catch (SQLException ex) {
Logger.getLogger(Frame_Medidor.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(Frame_Medidor.class.getName()).log(Level.SEVERE, null, ex);
}
}
Funciona legal…
Depois, no método deste list, gostaria de pegar um dos componetes da lista (que é um arraylist também, lembrem-se, array bidimensional),
isto é, ítem que o usuário vai clicar, e mandar como parâmetro para um outro método.
Estou tentando usar:
ConectDB mn = new ConectDB();
mn.writeJob((List) jList1.getSelectedValue());
Dei um joption pane em (List) jList1.getSelectedValue() e mostrou o conteúdo.
Agora o método writejob, que recebe um list não aceita trabalhar com o q eu to mandando como parâmetro, ele dá a seguinte exceção:
Exception in thread “AWT-EventQueue-0” java.lang.ClassCastException: java.lang.String cannot be cast to java.util.List
O teste q eu fiz dentro do metodo que recebe o array, era apenas um sysoutprintln tentando varrer o arraylist recebido… mas deu problema também…
saberiam me dizer algum macete que eu poderia usar para faz um cast q funcione?
valeu