when i try to show data from my database in table this way:
void AddOrderToTable(JTable projectTable) throws SQLException
{
zadanie=connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
sql="SELECT * FROM Orders ;";
dane=zadanie.executeQuery(sql);
int n=0;
while (dane.next())
{
uzsakNr=dane.getString("Uzsakymo_nr");
if (uzsakNr != null) {uzsakNr = uzsakNr.trim();}
priemDat=dane.getString("Priemimo_data");
if (priemDat != null) {priemDat = priemDat.trim();}
irengPav=dane.getString("Irenginio_pavadinimas");
if (irengPav != null) {irengPav = irengPav.trim();}
model=dane.getString("Modelis");
if (model != null) {model = model.trim();}
tip=dane.getString("Tipas");
if (tip != null) {tip = tip.trim();}
serial=dane.getString("Serijinis_nr");
if (serial != null) {serial = serial.trim();}
priedai=dane.getString("Priedai");
if (priedai != null) {priedai = priedai.trim();}
giedAprasy=dane.getString("Gedimo_aprasymas");
if (giedAprasy != null) {giedAprasy = giedAprasy.trim();}
status=dane.getString("Statusas");
if (status != null) {status = status.trim();}
grazDat=dane.getString("Grazinimo_data");
if (grazDat != null) {grazDat = grazDat.trim();}
pastabos=dane.getString("Pastabos");
if (pastabos != null) {pastabos = pastabos.trim();}
prieme=dane.getString("Prieme");
if (prieme != null) {prieme = prieme.trim();}
clientId=dane.getString("ClientId");
if (clientId != null) { clientId = clientId.trim();}
projectTable.setValueAt(uzsakNr, n, 0);
projectTable.setValueAt(priemDat, n, 1);
projectTable.setValueAt(irengPav, n, 2);
projectTable.setValueAt(model, n, 3);
projectTable.setValueAt(status, n, 4);
projectTable.setValueAt(clientId, n, 5);
n++;
}
zadanie.close();
}
i get error
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
at java.util.Vector.elementAt(Vector.java:432)
at javax.swing.table.DefaultTableColumnModel.getColumn(DefaultTableColumnModel.java:276)
at javax.swing.JTable.convertColumnIndexToModel(JTable.java:1812)
at javax.swing.JTable.setValueAt(JTable.java:1926)
at GetFromDb.AddOrderToTable(GetFromDb.java:195)
at Remontas.newItemMenuItem_2_actionPerformed(Remontas.java:754)
at Remontas$NewItemMenuItem_2ActionListener.actionPerformed(Remontas.java:710)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1051)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1092)
at java.awt.Component.processMouseEvent(Component.java:5517)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
at java.awt.Component.processEvent(Component.java:5282)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3984)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3819)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1791)
at java.awt.Component.dispatchEvent(Component.java:3819)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
where is problem?
Problem is that the table model is trying to display before you've got any data. If the source data isn't loaded yet, you need to handle that condition rather than attempting to access the objects that are still null.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.