> Dans ton cas, as tu une raison pour vouloir faire absolument le close du > ResultSet ?
Une vielle habitude des IO, qui m'a �vit� beaucoup de bugs (les fermetures automatiques ayant souvent un bug dans les cas tordus qui ont 99,99% de chance d'arriver chez le client). Dans le cas pr�sent, je vais �liminer le rs.close() pour ne garder que le st.close(). Je trouve �a moins "joli", mais au moins je garde l'information de l'exception possible. 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] -----Message d'origine----- De : Sebastien Cesbron [mailto:[EMAIL PROTECTED] Envoy� : vendredi 7 mars 2003 12:53 � : [EMAIL PROTECTED] Objet : Re: Resultset et close() J'avais eu le m�me probl�me que toi a une �poque et je m'�tais rendu compte que finalement je n'avais pas besoin de faire le close de mon ResultSet moi m�me vu que c'est fait dans le close du Statement. Dans ton cas, as tu une raison pour vouloir faire absolument le close du ResultSet ? Seb Erik Mazoyer wrote: > 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] > _____________________________________________________________________ > GRAND JEU SMS : Pour gagner un NOKIA 7650, envoyez le mot IF au 61321 > (prix d'un SMS + 0.35 euro). Un SMS vous dira si vous avez gagn�. > R�glement : http://www.ifrance.com/_reloc/sign.sms > _____________________________________________________________________ Envie de discuter en "live" avec vos amis ? T�l�charger MSN Messenger http://www.ifrance.com/_reloc/m la 1�re messagerie instantan�e de France
