Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [java] problema con classe per estrarre dati da un db

    questa è una classe che dovrebbe rilasciare le celle necessari e a riempire una jTable solo che mi da qualche probla.

    codice:
    import java.awt.*;   <---RIGA 3
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.table.AbstractTableModel;
    import java.sql.*;
    import java.util.*;
    
    class QueryTableModel
        extends AbstractTableModel {
      String[] columnNames;
      ArrayList riga = new ArrayList();
      String[] cella;
      db db = new db();
    
      public QueryTableModel(String query) {
        int rowCount;
        db.connection();
        try {
          ResultSet rs = db.query(query);
          ResultSetMetaData rsmd = rs.getMetaData();
          int columnsNumber = rsmd.getColumnCount();
          columnNames = new String[columnsNumber];
          for (int i = 0; i < columnsNumber; i++) {
            columnNames[i] = rsmd.getColumnName(i + 1);
          }
          while (rs.next()) {  <--RIGA 28 (qua si inceppa)
            for (int i = 0; i < columnNames.length; i++) {
              cella[i] = rs.getString(i);
            }
            riga.add(cella);
          }
        }
        catch (Exception ex) {
          ex.printStackTrace();
        }
        finally {
          db.closedb();
        }
      }
    
      public int getRowCount() {
        return riga.size();
      }
    
      public int getColumnCount() {
        return columnNames.length;
      }
    
      public Object getValueAt(int r, int c) {
        cella = (String[]) (riga.get(r));
        System.out.println(cella[c]);
        return cella[c];
      }
    
      public String getColumnName(int c) {
        return columnNames[c];
      }
    }
    eccori:

    org.postgresql.util.PSQLException: Connection is closed. Operation is not permitted.
    at org.postgresql.jdbc1.AbstractJdbc1ResultSet.next(A bstractJdbc1ResultSet.java:138)
    at iper.QueryTableModel.<init>(QueryTableModel.java:2 8)
    at iper.trova_dialog.trova_ass_Button_actionPerformed (trova_dialog.java:566)
    at iper.trova_dialog_trova_ass_Button_actionAdapter.a ctionPerformed(trova_dialog.java:608)
    at javax.swing.AbstractButton.fireActionPerformed(Abs tractButton.java:1786)
    at javax.swing.AbstractButton$ForwardActionEvents.act ionPerformed(AbstractButton.java:1839)
    at javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:420)
    at javax.swing.DefaultButtonModel.setPressed(DefaultB uttonModel.java:258)
    at javax.swing.plaf.basic.BasicButtonListener.mouseRe leased(BasicButtonListener.java:245)
    at java.awt.Component.processMouseEvent(Component.jav a:5100)
    at java.awt.Component.processEvent(Component.java:489 7)
    at java.awt.Container.processEvent(Container.java:156 9)
    at java.awt.Component.dispatchEventImpl(Component.jav a:3615)
    at java.awt.Container.dispatchEventImpl(Container.jav a:1627)
    at java.awt.Component.dispatchEvent(Component.java:34 77)
    at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:3483)
    at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:3198)
    at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:3128)
    at java.awt.Container.dispatchEventImpl(Container.jav a:1613)
    at java.awt.Window.dispatchEventImpl(Window.java:1606 )
    at java.awt.Component.dispatchEvent(Component.java:34 77)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java: 456)
    at java.awt.EventDispatchThread.pumpOneEventForHierar chy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:151)
    at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:141)
    at java.awt.Dialog$1.run(Dialog.java:540)
    at java.awt.Dialog.show(Dialog.java:561)
    at iper.guest_frame.trova_dialog_actionPerformed(gues t_frame.java:89)
    at iper.guest_frame_trova_button_actionAdapter.action Performed(guest_frame.java:111)
    at javax.swing.AbstractButton.fireActionPerformed(Abs tractButton.java:1786)
    at javax.swing.AbstractButton$ForwardActionEvents.act ionPerformed(AbstractButton.java:1839)
    at javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:420)
    at javax.swing.DefaultButtonModel.setPressed(DefaultB uttonModel.java:258)
    at javax.swing.plaf.basic.BasicButtonListener.mouseRe leased(BasicButtonListener.java:245)
    at java.awt.Component.processMouseEvent(Component.jav a:5100)
    at java.awt.Component.processEvent(Component.java:489 7)
    at java.awt.Container.processEvent(Container.java:156 9)
    at java.awt.Component.dispatchEventImpl(Component.jav a:3615)
    at java.awt.Container.dispatchEventImpl(Container.jav a:1627)
    at java.awt.Component.dispatchEvent(Component.java:34 77)
    at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:3483)
    at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:3198)
    at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:3128)
    at java.awt.Container.dispatchEventImpl(Container.jav a:1613)
    at java.awt.Window.dispatchEventImpl(Window.java:1606 )
    at java.awt.Component.dispatchEvent(Component.java:34 77)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java: 456)
    at java.awt.EventDispatchThread.pumpOneEventForHierar chy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:151)
    at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:145)
    at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:137)
    at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:100)

    non riesco a capire dove sbaglio
    my workgroup :sexpulp:
    http://www.promisestudios.net

  2. #2
    bhè, te lo dice alla riga 1 della sbrodolata dell'errore: è chiusa la connessione col db e quindi non puoi fare query
    23-08-2005: Udinese in cémpions lìg
    Questa estate l'ho passata a Tallin

  3. #3
    eh k, ma perchè si chiude?
    my workgroup :sexpulp:
    http://www.promisestudios.net

  4. #4
    ahhhh la mattina!!

    son riuscito a scovare l'errore!!!

    il problema era dovuto all'array cella che non era stato inizializzato -_-'' *si prende a fustigate*

    e poi andava messo un +1 qua:

    cella[i] = rs.getString(i+1);

    ciao a tutti e grazie
    my workgroup :sexpulp:
    http://www.promisestudios.net

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.