J'ai une m�thode qui ouvre un java.sql.ResultSet sur une base de donn�e.
Dans le finally de la m�thode, je referme le ResultSet (m�thode close()).

ResultSet       rs      = null;
try {
        ...
        rs      = stmt.executeQuery(...);
        ...
} finally {
        if(rs != null) {
                rs.close();
        }
}

Le probl�me est qu'au cours de la m�thode ce ResultSet peut �tre ferm� ou non (la 
m�thode n'est pas en mesure de le savoir).

Je n'ai pas trouv� de solution pour d�termin� si un ResultSet est ferm� ou non.

Si je le ferme � nouveau le ResultSet dans le finally, une exception est lev�e.
Mais h�las elle est de type SQLException, ce qui n'est pas sp�cifique.

Bref pour l'instant la seule solution trouv�e est de ne pas tenir compte de 
l'exception lev�e par le close.

} finally {
        if(rs != null) {
                try {
                        rs.close();
                } catch(SQLException sqlex) {}
        }
}
Mais cela masque aussi toutes les autres raisons pour lesquelles le close n'a pu avoir 
lieu, ce qui nuit au d�boguage.

public void close()
           throws SQLException
...
Throws: 
        SQLException - if a database access error occurs

Bref, avez vous une solution � me proposer ?

Merci,

--------------------------------------------------------------------
Erik Mazoyer, Chef de projet
HyperOffice
6, rue Jacques Daguerre - 92565 Rueil-Malmaison Cedex
T�l. 01 41 96 96 76
Fax 01 41 96 96 77
M�l  [EMAIL PROTECTED]

Répondre à