Ausgabe von leeren JTable Zeilen

kniffel

Mitglied
Hallo,

ich habe ein Problem mit dem Ausgeben eines bestimmten Feldes aus einer JTable.
Zum Hintergrund:
Die JTable wird mithilfe einer MySQL DB gefüllt.
Die Erste Tabelle hat 6 Spalten und 31 befüllte Zeilen.
Die Zweite Tabelle hat 6 Spalten und 11 befüllte Zeilen.

main.java
Java:
Vector<String> columnNames = new Vector<String>();
       Vector<Vector> data = new Vector<Vector>();
        try {
            //Connect to the Database
            Class.forName(driver);
            Connection connection = DriverManager.getConnection(databaseURL, DATABASE_USER, USER_PASSWORD);
            //Read data from table
            String sql = "Select * from "+tabelle+";";
            Statement stmt = connection.createStatement();
            ResultSet rs = stmt.executeQuery(sql);
            ResultSetMetaData md = rs.getMetaData();
            int columns = md.getColumnCount();
            //System.out.println(columns);
            //Get column names
            for (int i=1;i<=columns;i++) {
                columnNames.addElement( md.getColumnName(i));
                //System.out.print(md.getColumnName(i));
            }
            //Get row data
            while (rs.next()) {
                Vector<Object> row = new Vector<Object>(columns);

                for (int i = 1;i<=columns; i++) {
                    row.addElement( rs.getObject(i));
                    //System.out.print(rs.getObject(i));
                }
                data.addElement( row );
            }
            rs.close();
            stmt.close();
        } catch(Exception e) {
            System.out.println(e);
        }
        GUI.table = new JTable(data,columnNames);
gui.java
Java:
Object obj;

for (int i=0;i<31;i++) {
                   //obj = table.getValueAt(i,2);
                   System.out.println(table.getValueAt(i,2));
}//Ende for
Beim starten wird alles korrekt geladen und ausgegeben.
Sobald ich aber die tabelle wechsle (als auf Tabelle 2, die nur 11 Einträge hat) bekomme ich eine Exception:
Code:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 11 >= 11
	at java.util.Vector.elementAt(Vector.java:427)
	at javax.swing.table.DefaultTableModel.getValueAt(DefaultTableModel.java:632)
	at javax.swing.JTable.getValueAt(JTable.java:2686)
	at src.GUI$1.paintComponent(GUI.java:94)
	at javax.swing.JComponent.paint(JComponent.java:1029)
	at javax.swing.JComponent.paintChildren(JComponent.java:862)
	at javax.swing.JComponent.paint(JComponent.java:1038)
	at javax.swing.JComponent.paintToOffscreen(JComponent.java:5124)
	at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1479)
	at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1410)
	at javax.swing.RepaintManager.paint(RepaintManager.java:1224)
	at javax.swing.JComponent._paintImmediately(JComponent.java:5072)
	at javax.swing.JComponent.paintImmediately(JComponent.java:4882)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:785)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:713)
19.0
	at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:693)30.0

Diese wiederholt sich ein paar Mal mit einzelnen Werten aus der Tabelle2 zwischen den Exceptions.

Erwähnenswert: Wenn ich die For Schleife auf 11 begrenze, läuft es Problemlos durch, allerdings gibt er mir das Ergebnis 2x aus. Wieso?

Das Ziel ist es im Endeffekt die Werte als Linien-Diagramm darstellen zu lassen.
Java:
float wert;
int alt;

                   int x=580;
                   int x2=590;
                   int y=369;
                   int y2=369;
//wert = ((Float)obj).intValue();
                   
                      // if (obj==null) {    //<--???
                      //    break;
                  // }//Ende if
                  // else {
                  //        alt = (int)wert;
                  //        g.drawLine(x+i*10,y,x2+i*10,y2);
                  //        y=y2;
                  //        y2=369-alt;}
                   }//Ende for
Aber soweit bin ich noch nicht.

Half auch nicht:
Java:
if (table.getValueAt(i,2)==null) {break;}
                   else {
                   System.out.println(table.getValueAt(i,2));
                   }
Liegts daran, dass überhaupt keine 12. Zeile erzeugt wird? Habe auch versucht int columns auf 31 zu setzen. Keine Besserung.

Ich bedanke mich herzlichst wenn jemand einen Tipp zur Lösung findet :)

*EDIT:
Die Spalte die ausgelesen wird, ist in MySQL als Float definiert.
 

Michael...

Top Contributor
Keine Ahnung was das genau soll. Aber es wird versucht ein Index auszulesen, der nicht existiert.
Das Limit der for Schleife sollte nicht fest sein, sondern auf die Zeilenanzahl der auszulesenden Tabelle gesetzt werden.
 

kniffel

Mitglied
Hallo

das ist ein guter Tipp,
dazu müsste ich aber columns an eine andere Klasse übergeben.
Da es sich um GUI und Main handelt.
Main liegt im Hauptordner - einen Unterordner weiter ("src") liegt GUI.

Habe in Main über
Java:
import src.GUI;
public GUI GUI = new GUI();
Und in GUI über
Java:
package src;

Beide verbunden.
Habe mir get/set Methoden angesehen, allerdings scheint da was nicht geklappt zu haben.

Wir übermittle ich ihm den int Wert columns nach GUI?
 

Michael...

Top Contributor
dazu müsste ich aber columns an eine andere Klasse übergeben.
Was hat das mit columns zu tun. Es wird doch über die Zeilen iteriert und der Fehler tritt auf, weil auf einen Wert in einer nicht existierenden Zeile zugegriffen werden soll.
Die JTable weiß wieviele Zeilen und Spalten sie hat und man kann sie bei Bedarf auch danach Fragen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D graphische Ausgabe zu langsam (vsync gzielt abschaltbar?)... AWT, Swing, JavaFX & SWT 13
D Hohe Prozessorauslastung bei Ausgabe auf TextArea AWT, Swing, JavaFX & SWT 2
P GUI Ausgabe des Strings AWT, Swing, JavaFX & SWT 3
S Ausgabe aktualisiert sich nur nach 2. Klick AWT, Swing, JavaFX & SWT 17
ralfb1105 JavaFX MVC: Thread in Model Class mit Ausgabe in TextArea AWT, Swing, JavaFX & SWT 10
F JavaFX textField Ausgabe automatisch kopieren AWT, Swing, JavaFX & SWT 7
S Ausgabe in JTextArea AWT, Swing, JavaFX & SWT 13
R Ausgabe über JOptionPane.showMessageDialog funktioniert nicht AWT, Swing, JavaFX & SWT 2
M Ausgabe der HSL oder RGB Zusammensetzung einer Farbe (JColorChooser AWT, Swing, JavaFX & SWT 1
N Swing Jtextfield und Ausgabe von Wärungsbeträgen AWT, Swing, JavaFX & SWT 3
KilledByCheese Swing Seltsame Ausgabe nach ButtonClick AWT, Swing, JavaFX & SWT 1
P JavaFX Komische konsolen Ausgabe (nur roter Pfad) AWT, Swing, JavaFX & SWT 7
D Swing Warum erhalte ich keine Ausgabe? Funktioniert der equals-vergleich in actionPeformed nicht richtig? AWT, Swing, JavaFX & SWT 3
L Ausgabe in JEditorPane mittels HTMLEditorKit zeigt auf bestimmten Systemen falsche Zeichen AWT, Swing, JavaFX & SWT 1
H Swing jComboBox Ausgabe -1/null AWT, Swing, JavaFX & SWT 4
A Swing Zwei Klassen mit Textfeld Eingaben vergleichen und Ausgabe erzeugen AWT, Swing, JavaFX & SWT 10
A Swing 2 JSlider verknüpfen und mit einem JTextField vergleichen, dann Ausgabe AWT, Swing, JavaFX & SWT 5
X JTextField Ausgabe klappt nicht AWT, Swing, JavaFX & SWT 4
A Swing Focus der Radio Buttons + text bleibt gleich und gleichzeitige ausgabe zweier Objekte in 1. Fenster AWT, Swing, JavaFX & SWT 3
T Swing Ausgabe aus ArrayList in Klasse1 in jTextArea in Klasse2 AWT, Swing, JavaFX & SWT 2
L Schöne Ausgabe in Form einer Liste AWT, Swing, JavaFX & SWT 5
E Keine Ausgabe auf Console und List AWT, Swing, JavaFX & SWT 13
J Swing Ausgabe in JTable AWT, Swing, JavaFX & SWT 3
J Swing Ausgabe in einem JFrame AWT, Swing, JavaFX & SWT 8
S String Array Ausgabe im JLabel ??? AWT, Swing, JavaFX & SWT 8
E Keine Ausgabe von JList bei drücken von Button auf die Konsole AWT, Swing, JavaFX & SWT 7
P Ausgabe Label AWT, Swing, JavaFX & SWT 6
D Fenster will keine Ausgabe geben>:( AWT, Swing, JavaFX & SWT 3
C TextArea Ausgabe immer ganz oben AWT, Swing, JavaFX & SWT 3
S TextArea ausgabe ohne JFrame zu implementieren AWT, Swing, JavaFX & SWT 2
M Swing Ausgabe in JTextArea verzögern AWT, Swing, JavaFX & SWT 7
R JComboBox Ausgabe in String speichern AWT, Swing, JavaFX & SWT 3
H Swing Ausgabe auf 2 nachkomma stellen beschränken AWT, Swing, JavaFX & SWT 3
B Ausgabe schrittweise AWT, Swing, JavaFX & SWT 13
D Vollbild ausgabe AWT, Swing, JavaFX & SWT 2
M Swing Probleme bei der Ausgabe der JList AWT, Swing, JavaFX & SWT 2
J Swing Swing Ein/Ausgabe von einem Datum AWT, Swing, JavaFX & SWT 3
H Ausgabe an Textfeld JTextField AWT, Swing, JavaFX & SWT 3
W Welche Text ausgabe möglichkeit ist geeignet... AWT, Swing, JavaFX & SWT 6
S Tabellen und Text Ausgabe in Swing GUI AWT, Swing, JavaFX & SWT 3
Z GUI-Ausgabe mit Bild und Sound AWT, Swing, JavaFX & SWT 3
M Ausgabe nach Klick auf JButton funktioniert nicht. AWT, Swing, JavaFX & SWT 6
D JTable Viewport - Ausgabe der sichtbaren Spalten AWT, Swing, JavaFX & SWT 2
F dynamische Ausgabe eines extenen Programms umleiten AWT, Swing, JavaFX & SWT 6
J Bildfilterung und Ausgabe in ein ImageIcon AWT, Swing, JavaFX & SWT 2
S Dynamische Ausgabe im JTextField AWT, Swing, JavaFX & SWT 7
L Problem bei der Ausgabe JTextArea AWT, Swing, JavaFX & SWT 3
S Eingeschränkte Ausgabe auf 2. Bildschirm? (Laptop VGA Output AWT, Swing, JavaFX & SWT 4
P SWT Performance : "Text" - Ausgabe beschleunigen ? AWT, Swing, JavaFX & SWT 21
G Aktualisierung der Ausgabe in SWT AWT, Swing, JavaFX & SWT 2
Z Die ausgabe.setText(b.getisbn()); überschreibt sich jedesmal AWT, Swing, JavaFX & SWT 4
E Frage? Warum funktioniert die grafische Ausgabe nicht? AWT, Swing, JavaFX & SWT 4
J DB-Ausgabe realisieren? AWT, Swing, JavaFX & SWT 2
M Ausgabe mit JOptionPane AWT, Swing, JavaFX & SWT 6
G Bedingte Ausgabe beim JTree AWT, Swing, JavaFX & SWT 4
M Konsolenprg-Ausgabe in GUI geleitet - Brauche ich Threads? AWT, Swing, JavaFX & SWT 2
V JTree Children Ausgabe Problem AWT, Swing, JavaFX & SWT 2
V Tree Ausgabe Problem AWT, Swing, JavaFX & SWT 2
B JavaFX TextInputDialog: Focus auf Eingabefeldinhalt setzen und nach OK Inhalt leeren AWT, Swing, JavaFX & SWT 5
R Swing JTextField getText() liefert leeren String AWT, Swing, JavaFX & SWT 6
K Viele Textfield mit Hilfe eines MousListener leeren - möglich? AWT, Swing, JavaFX & SWT 8
A Swing JTextField durch einen JButton leeren AWT, Swing, JavaFX & SWT 15
K Swing JTable Text im Hintergrund einer leeren Tabelle AWT, Swing, JavaFX & SWT 3
M Swing JTable cell leeren bei Eingabe AWT, Swing, JavaFX & SWT 6
G Path leeren AWT, Swing, JavaFX & SWT 2
D Erzeugen eines leeren Graphics-Objektes AWT, Swing, JavaFX & SWT 7
W Swing JPasswordField "leeren" AWT, Swing, JavaFX & SWT 3
D JList leeren AWT, Swing, JavaFX & SWT 3
N Jtextfield leeren AWT, Swing, JavaFX & SWT 9
R JTable darstellen von leeren Zellen AWT, Swing, JavaFX & SWT 12
G JFormattedTextField lässt sich nicht mehr leeren AWT, Swing, JavaFX & SWT 4
G JFrame "leeren" AWT, Swing, JavaFX & SWT 5
M Textfelder leeren AWT, Swing, JavaFX & SWT 6
D JTextArea leeren AWT, Swing, JavaFX & SWT 3
S JDialog und 'Inhalte' schliessen bzw. leeren AWT, Swing, JavaFX & SWT 9
M JTextField nach erfolgreicher Eingabe leeren? AWT, Swing, JavaFX & SWT 2
sliwalker ContentPane leeren und völlig neu bestücken? AWT, Swing, JavaFX & SWT 4
V Fehlerbehandlung bei leeren TextFields AWT, Swing, JavaFX & SWT 18
J Drag und drop aus einer JTable - bitte um Unterstützung AWT, Swing, JavaFX & SWT 2
S HPRO und UPRO gemeinsame JTABLE gemeinsamer RENDERER ? AWT, Swing, JavaFX & SWT 1
F Swing JTable - MultiHeader inkl. Eingabemöglichkeit AWT, Swing, JavaFX & SWT 1
S JTable - Feldinhalte anzeigen AWT, Swing, JavaFX & SWT 15
D Swing JTable Spaltenbreite AWT, Swing, JavaFX & SWT 1
W Gibt es einen "automatischen Listener" in Swing oder JTable oder der ATM-Klasse? AWT, Swing, JavaFX & SWT 14
G jTable - getSelectedRow() AWT, Swing, JavaFX & SWT 3
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
P JTable Listener für die Änderung einzelner Zellen oder Rows AWT, Swing, JavaFX & SWT 2
D Tastaturabfragen CTRL+t, CTRL+E bei eine JTable, bestehend aus JTextAteas AWT, Swing, JavaFX & SWT 4
P Checkboxes in JTable nicht editable AWT, Swing, JavaFX & SWT 9
F Best-Practise: JTable Text in Zelle zu groß AWT, Swing, JavaFX & SWT 2
izoards JTable in CSV File schreiben... AWT, Swing, JavaFX & SWT 23
Kohl Jedes Objekt einer JTable um ein Zeichen verkürzen AWT, Swing, JavaFX & SWT 7
I JTable, DefaultTableModel, zwei Zahlen multiplizieren. AWT, Swing, JavaFX & SWT 26
M JTABLE / wie oft wurde gewürfelt. AWT, Swing, JavaFX & SWT 1
F JTable vergrößern AWT, Swing, JavaFX & SWT 2
H JTable: Diverse NullPointer-Exceptions zur Laufzeit AWT, Swing, JavaFX & SWT 3
J Swing Werte des JTable werden nicht angezeigt AWT, Swing, JavaFX & SWT 9
T Swing JTable cellRenderer mit jpg Hintergrundfarbe lässt sich nicht ändern. AWT, Swing, JavaFX & SWT 1
HoT Einzelne Zelle in JTable Rahmen unten setzen AWT, Swing, JavaFX & SWT 24
B JTable Zellen zusammenfügen AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben