une bonne documentation sur les « éviter d'attraper throwable », dans le contexte du serveur weblogic

StackOverflow https://stackoverflow.com/questions/2803693

Question

Je suis actuellement un refactoring pour arracher tous les blocs existants codebase (EJB) où un Throwable est coincé à l'intérieur de l'EJB.

try {
    ... do some business logic
} catch(Throwable t){
    ... log and swallow ... :-(
}

Je veux / besoin de convaincre les gens autour de moi avec la documentation appropriée que « la capture Throwable » est un no-go pour un EJB (nous avons beaucoup de discussions autour de ce sujet). Weblogic se chargera de toutes les conditions « d'erreur » et peut-être annuler et de mettre EJBs frais (travail) EJBs dans la piscine. Attraper Throwable saperait tous ces filets de sécurité fournis par weblogic et attraper Throwable est une mauvaise pratique de toute façon (mais les gens ici sont réticents et utiliser le marteau « Throwable » partout).

Quelqu'un est-il capable de me pointer vers des documents en ligne où ce comportement est expliqué (pour weblogic, jboss, etc.). J'ai cherché sur Google et avait un regard sur les docs weblogic, mais n'a pas pu trouver quoi que ce soit, juste doc java générique.

Était-ce utile?

La solution

Ils disent, la preuve est dans le pudding.

Ecrire un petit exemple qui ne fait que jeter différents types d'exceptions (exécution, erreurs) et démontrer que votre contenant les poignées grâce.

Cela arrêtera les critiques morts dans leurs traces.

Autres conseils

  1. Acheter une copie de Effective Java, deuxième édition par Joshua Bloch pour tous les membres de votre équipe.

  2. Avoir tout le monde lire le chapitre 9, "exceptions", qui couvre:

    • "Utiliser des exceptions uniquement pour des conditions exceptionnelles"
    • "Utiliser des exceptions pour vérifier les conditions récupérables et des exceptions d'exécution pour les erreurs de programmation"
    • "Évitez l'utilisation inutile des exceptions vérifiées"
    • "Privilégier l'utilisation des exceptions standard"
    • "lancer des exceptions appropriées à l'abstraction"
    • "document toutes les exceptions lancées par chaque méthode"
    • "Inclure les informations de capture d'échec dans les messages de détail"
    • "Efforcez-atomicité d'échec"
    • "Ne pas ignorer les exceptions"
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top