qualcuno mi puo aiutare ho un piccolo problema con le query.
da quello ke ho capito mi chiude il resultset in automatico senza ke finisce la quesry... il codice e :
stampa solo la prima riga della tabella Tag del DB... ma nle DB sono presente ben 10 tuple...codice:public List<Tag> visualizzaTag() { List<Tag> list=new ArrayList<Tag>(); String query="SELECT * FROM tag WHERE file_associato='"+this.getIn()+"'"; try { con=new ConnectDB(); ResultSet v= con.eseguiQuery(query); riga 81: while (v.next()){ Tag t= new Tag(v.getInt(1), null, v.getDate(3)); String query2="SELECT * FROM persona WHERE id='"+v.getInt(2)+"'"; Persona p=cerca(query2); t.setPersona(p); list.add(t); } v.close(); con.close(); }catch (Exception e){ e.printStackTrace(); } return list; } public Persona cerca(String query2){ Persona p=null; try { ResultSet v2= con.eseguiQuery(query2); while (v2.next()){ p=new Persona(v2.getInt(1),v2.getString(2), v2.getString(3), v2.getString(4), v2.getString(5), v2.getString(6), v2.getDate(7)); } } catch (SQLException e) { e.printStackTrace(); } return p; }
metto qua l'errore pure:l'errore sta nella riga 81 ke ho segnato da quello che ho capito... quando faccio la seconda query mi chiude in automatico il primo resultSet, Qualcuno sa come risolvere questo problema??codice:java.sql.SQLException: Operation not allowed after ResultSet closed at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1075) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:984) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:929) at com.mysql.jdbc.ResultSetImpl.checkClosed(ResultSetImpl.java:794) at com.mysql.jdbc.ResultSetImpl.next(ResultSetImpl.java:7145) at photobook.Img.visualizzaTag(Img.java:82) at grafica.ImgListener.mostraTag(ImgListener.java:943) at grafica.ImgListener.actionPerformed(ImgListener.java:65) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2012) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2335) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:404) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.AbstractButton.doClick(AbstractButton.java:374) at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:829) at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:873) at java.awt.Component.processMouseEvent(Component.java:6108) at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) at java.awt.Component.processEvent(Component.java:5873) at java.awt.Container.processEvent(Container.java:2105) at java.awt.Component.dispatchEventImpl(Component.java:4469) at java.awt.Container.dispatchEventImpl(Container.java:2163) at java.awt.Component.dispatchEvent(Component.java:4295) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4461) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4125) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4055) at java.awt.Container.dispatchEventImpl(Container.java:2149) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4295) at java.awt.EventQueue.dispatchEvent(EventQueue.java:604) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)

Rispondi quotando