La gestion des exceptions
Bonjour,
je souhaiterai quelques éclaircissement sur la gestion des exceptions en Java. J'ai lu pas mal de tutoriel sur le sujet mais cela ne répond pas bien à mes questions de développement.
Pour vous expliquer le problème, prenons un exemple :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
protected Session getSession() {
Session ret = null;
if (this.sessionFactory!=null) {
ret = this.sessionFactory.getCurrentSession();
}
return ret;
}
public boolean delete(Object o) {
boolean ret = false;
if (o==null) {
ret = true;
} else {
Session s = getSession();
if (s!=null) {
try {
s.beginTransaction();
s.delete(o);
s.getTransaction().commit();
logDebug("Successful delete.");
ret = true;
} catch (RuntimeException re) {
logError("Error during deleting.");
throw re;
}
}
}
return ret;
} |
En fait je ne sais ce que je dois faire dans le cas de méthode chainée. Dans mon exemple, si l'on arrive pas à récupérer la session (session est null), toutes les méthodes qui font un accès en BD (comme la méthode delete) ne peuvent pas faire leur boulot.
Que dois-je faire ? Lever une exception dans la méthode getSession ? Lever une exception dans la méthode delete (et potentiellement dans les autres qui utilisent getSession) ?
Faire propager l'exception en utilisant new Exception ("message", exception_precedente) ? Ne rien faire ? Au final je veux qu'à la fin je puisse afficher une page d'erreur correcte à l'utilisateur.
Merci d'avance