Hallo,
ich selektiere in einer JTable eine Zelle und lasse mir deren Wert in eine Textfeld schreiben. Mit diesem Wert löse ich dann eine Suche (LDAP) aus und schreibe die Ergebenisse wieder in die JTable zurück.
Dabei erhalte ich eine Fehlermeldung, die auch auf den noch existierenden ListSelectionListener zurückführe.
Die erste Tabelle kann mehrere Ergebniszeilen enthalten, die Tabelle nach der LDAP Abfrage immer nur eine Ergebniszeile (in der Regel).
folgende Fragen:
StackTrace:
danke für Eure Hilfe
GGK
ich selektiere in einer JTable eine Zelle und lasse mir deren Wert in eine Textfeld schreiben. Mit diesem Wert löse ich dann eine Suche (LDAP) aus und schreibe die Ergebenisse wieder in die JTable zurück.
Dabei erhalte ich eine Fehlermeldung, die auch auf den noch existierenden ListSelectionListener zurückführe.
Die erste Tabelle kann mehrere Ergebniszeilen enthalten, die Tabelle nach der LDAP Abfrage immer nur eine Ergebniszeile (in der Regel).
folgende Fragen:
- wie kann ich den SelectionListener wieder löschen?
- wenn ich eine Selektion in der Tabelle vornehme, dann wird mit das Ergebnis zweimal angezeigt. Warum ist das so?
Java:
ListSelectionModel cellSelectionModel = table.getSelectionModel();
cellSelectionModel.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
cellSelectionModel.addListSelectionListener(new ListSelectionListener()
{
public void valueChanged(ListSelectionEvent e)
{
String selectedData = null;
int selectedRow = table.getSelectedRow();
int selectedColumns = table.getSelectedColumn();
System.out.println("selectedRow: "+selectedRow);
System.out.println("selectedColumns: "+selectedColumns);
selectedData = (String) table.getValueAt(selectedRow, selectedColumns);
}
}
*/
System.out.println("Selected: " + selectedData)
}
});
StackTrace:
Code:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.Vector.elementAt(Unknown Source)
at javax.swing.table.DefaultTableModel.getValueAt(Unknown Source)
at javax.swing.JTable.getValueAt(Unknown Source)
at aimLoginCheck.AIMLogincheck$1.valueChanged(AIMLogincheck.java:161)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
Datensätze gefunden: 1
selectedRow: -1
selectedColumns: -1
at javax.swing
danke für Eure Hilfe
GGK