Bin mir nicht ganz sicher ob das jetzt der richtige Bereich ist da der Fehler nur bei einer JSF-Anwendung auftritt.
Jedes Mal wenn ich die Methode getSpecialSettings in einer JSF-Anwendung aufrufe führt dies zu
der SQL-Exception: Operation not allowed after ResultSet closed.
Führe ich folgende Java-Applikation aus kommt es aber zu keinem Fehler:
getSpecialSettings:
Ausgabe:res true
stmt false
java.sql.SQLException: Operation not allowed after ResultSet closed
Der Pool gibt meinem Erachten kein Statement zweimal zurück, wenn er dies machen würde, gäbe es ja auch bei der Java-Applikation einen Fehler.
Ich benutze mysql-connector-java-5.1.18 und einen Tomcat v6.
Würde mich über Lösungsvorschläge oder über Vermutungen zur Ursache freuen.
Jedes Mal wenn ich die Methode getSpecialSettings in einer JSF-Anwendung aufrufe führt dies zu
der SQL-Exception: Operation not allowed after ResultSet closed.
Führe ich folgende Java-Applikation aus kommt es aber zu keinem Fehler:
Java:
public static void main(String[] args) {
LinkedList<Integer> n=new LinkedList<Integer>();n.add(798);
LinkedList<specialsetting> s=DAO.getInstance().getSpecialSettings(n);
s=DAO.getInstance().getSpecialSettings(n);
DAO.getInstance().getClasses();
s=DAO.getInstance().getSpecialSettings(n);
}
Java:
public LinkedList<specialsetting> getSpecialSettings(LinkedList<Integer> IDs) {
........
// Get a Statement:
Statement stmt = pool.checkOut();
try {
ResultSet res = stmt.executeQuery(Query);
....
int ID;
String sd_name,desc;
while(res.next()){//Nach einen Durchlauf tritt hier der Fehler auf
ID=res.getInt("ID");
sd_name=res.getString("sd_name");
desc=res.getString("description");
........
System.out.println("res "+res.isClosed());
System.out.println("stmt " +stmt.isClosed());
}//while
.....
} catch (SQLException e) {
e.printStackTrace();
}
// Return the Statement:
pool.checkIn(stmt);
return specialsettings;
}
stmt false
java.sql.SQLException: Operation not allowed after ResultSet closed
Der Pool gibt meinem Erachten kein Statement zweimal zurück, wenn er dies machen würde, gäbe es ja auch bei der Java-Applikation einen Fehler.
Ich benutze mysql-connector-java-5.1.18 und einen Tomcat v6.
Würde mich über Lösungsvorschläge oder über Vermutungen zur Ursache freuen.