Pregunta

Actualmente estoy refactorizando una base de código existente (EJBS) para arrancar todos los bloques donde se puede atrapar un lanzamiento dentro del EJB.

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

Quiero/necesito convencer a las personas que me rodean con la documentación adecuada de que "atrapar tirando" es un no-go para un EJB (tenemos muchas discusiones sobre esto). WebLogic manejará todas las condiciones de "error" y tal vez invalidará EJBS y ponga EJBS frescos (que funcionan) en la piscina. Atrapar a lanzamiento socavaría todas estas redes de seguridad proporcionadas por WebLogic, y la captura de lanzamiento es una mala práctica de todos modos (pero las personas aquí son reacios y usan el martillo "tirable" en todas partes).

¿Alguien puede señalarme algunos documentos en línea donde se explica este comportamiento (para WebLogic, JBoss, etc.)? Busqué en Google y eché un vistazo a los documentos de WebLogic, pero no pude encontrar nada, solo Java Doc genérico.

¿Fue útil?

Solución

Dicen que la prueba está en el budín.

Escriba un pequeño ejemplo que no haga más que arrojar diferentes tipos de excepciones (tiempo de ejecución, errores) y demuestre que su contenedor las maneja con gracia.

Esto detendrá a los críticos muertos en seco.

Otros consejos

  1. Comprar una copia de Java efectivo, segunda edición de Joshua Bloch por cada miembro de su equipo.

  2. Haga que todos lean el Capítulo 9, "Excepciones", que cubre:

    • "Use excepciones solo para condiciones excepcionales"
    • "Use excepciones verificadas para condiciones recuperables y excepciones de tiempo de ejecución para errores de programación"
    • "Evite el uso innecesario de excepciones verificadas"
    • "Favorecer el uso de excepciones estándar"
    • "Lanzar excepciones apropiadas a la abstracción"
    • "Documente todas las excepciones lanzadas por cada método"
    • "Incluya información de captura de falla en mensajes detallados"
    • "Se esfuerza por la atomicidad de falla"
    • "No ignore las excepciones"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top