¿Hay alguna forma de tener un manejo global de excepciones en Jersey? En lugar de recursos individuales que tienen bloques try/catch y luego llaman a algún método que desinfecta todas las excepciones que se enviarán de vuelta al cliente, esperaba que hubiera una forma de expresar esto en el lugar donde realmente se llaman los recursos. ¿Esto es posible? ¿Si es así, cómo?Manejo global de excepciones en Jersey
En lugar de donde sanitize(e)
lanzaría algún tipo de excepción Jersey-configurado para el servlet Jersey:
@GET
public Object getStuff() {
try {
doStuff();
} catch (Exception e) {
ExceptionHandler.sanitize(e);
}
}
Tener:
@GET
public Object getStuff() throws Exception {
doStuff();
}
donde la excepción serían botados a algo que pueda interceptar y llamar al sanitize(e)
desde allí.
Esto es simplemente para simplificar todos los recursos de Jersey y para garantizar que las excepciones que se envían al cliente sean siempre de alguna forma comprensible.
Esto funciona si hago ExceptionMapper de modo que todas las excepciones son enrutados a ese método. Gracias. –
Trisfall
O incluso 'ExceptionMapper', entonces también puedes manejar 'Error's lanzados. –
tsauerwein