Java - Manejo de java.lang.Error

 
Vista:

Manejo de java.lang.Error

Publicado por Juan Pablo (15 intervenciones) el 03/12/2007 12:03:58
Buenas!

Estoy trabajando con Struts y tengo un problema. Cuando ocurre una excepción que hereda de 'java.lang.Exception', utilizo un handler que defino en 'struts-config.xml' para manejarla y retorno a la página del atributo 'path'. Eso me funciona perfectamente, pero el problema que tengo es que deseo tratar de similar manera aquellas excepciones que no heredan de 'java.lang.Exception', sino de 'java.lang.Error', y no sé cómo hacerlo. La razón
por la cual la misma mecánica no funciona supongo que es porque la etiqueta 'exception', que va dentro de la etiqueta 'action' en el fichero 'struts-config.xml', sólo acepta un 'type' que herede de 'java.lang.Exception', pero eso no me ayuda a resolver mi problema con aquellas excepciones que hereden de 'java.lang.Error'

Agradecería una solución

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Manejo de java.lang.Error

Publicado por Tom (1831 intervenciones) el 04/12/2007 17:52:03
Pues creo que no va a ayudarte mucho pero es que java.lang.Error está diseñado para que no se intente capturar. Por eso es perfectamente lógico que Struts no capture Error.

Copio y pego:
"An Error is a subclass of Throwable that indicates serious problems that a reasonable application should not try to catch."
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Manejo de java.lang.Error

Publicado por Juan Pablo (15 intervenciones) el 04/12/2007 18:16:48
Hola!

Sé lo que me quieres decir, pero como mínimo, ante una java.lang.Error debería informar mediante logging y retornar a una página de error. Como dije, esto sí lo consigo con cualquier RuntimeException que se produzca a través del handler que defino en el fichero "struts-config.xml", y creo que hacer esto usando Struts
es lo ideal porque consigo manejar todas estas excepciones de las que no me puedo recuperar en un único lugar, pero no puedo decir lo mismo si se produce una java.lang.Error.
No sé si me entiendes! No me tengo que preocupar de ninguna RuntimeException que ocurra, sea donde sea, porque gracias a una línea del "struts-config.xml" será tratada como deseo, pero sin embargo las java.lang.Error se me escapan.

¿Qué me sugieres?

Y gracias por tu ayuda!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Manejo de java.lang.Error

Publicado por Tom (1831 intervenciones) el 05/12/2007 13:32:10
Pues te sugiero que, dada la naturaleza "no capturable" de Error (y su gravedad), intentes minimizar las posiblidades de que ocurra.

Es decir, si estás causando Error porque, por ejemplo, se cae la jvm, podrías actualizar la versión, o buscar posibles parches del S.O., o quizás lanzarla con otros parámetros ...

No conozco Struts, y me temo que no se me ocurre nada para que puedas capturar Error.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Manejo de java.lang.Error

Publicado por Juan Pablo (15 intervenciones) el 07/12/2007 10:59:57
Gracias por tu sugerencia
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar