Definición de los correlacionadores de excepción de errores y excepciones de recursos
Las aplicaciones JAX-RS (API de Java™ para servicios web RESTful) pueden producir excepciones y errores. El comportamiento predeterminado es utilizar la funcionalidad de manejo de excepciones de un contenedor de aplicaciones como las páginas de error JSP (JavaServer Pages). Sin embargo, puede personalizar el manejo de errores y devolver respuestas específicas de seguridad cuando se produce una excepción o un error.
Acerca de esta tarea
Los métodos de recursos JAX-RS, como cualquier método Java, pueden generar excepciones comprobadas y no comprobadas. De forma predeterminada, una excepción o un error de tiempo de ejecución no comprobado se vuelve a producir en el contenedor. Una excepción comprobada
se incluye en una ServletException para los recursos que se ejecutan en el contenedor web. Por lo tanto, un desarrollador puede utilizar
los recursos de manejo de errores como páginas de error JSP para manejar las excepciones emitidas desde una aplicación JAX-RS.
JAX-RS presentó la excepción, javax.ws.rs.WebApplicationException. Un desarrollador puede especificar un nombre de clase de error o un objeto javax.ws.rs.core.Response específico
al crear una WebApplicationException. Cuando se genera la WebApplicationException, la información incluida en la excepción
mediante un nombre de clase de estado o el objeto Response se utiliza para serializar una respuesta.
Si no puede emitir la excepción, WebApplicationException,
en el código y no puede utilizar el recurso de manejo de errores en el contenedor web, pero desea utilizar una respuesta de error personalizada,
puede crear una clase JAX-RS javax.ws.rs.ext.ExceptionMapper personalizada para correlacionar excepciones con respuestas de error HTTP.
El procedimiento siguiente muestra cómo escribir una clase
ExceptionMapper personalizada.
Procedimiento
Resultados
Ha escrito un ExceptionMapper personalizado para manejar las excepciones de la aplicación web JAX-RS.