Commit 0c933981bd580a0ba11d5742fce463361968221e

Authored by Cleverson Sacramento
1 parent 751a30f8
Exists in master

Erro HTTP 500 não expõe o stack trace do servidor.

impl/extension/rest/src/main/java/br/gov/frameworkdemoiselle/internal/implementation/DefaultExceptionMapper.java
1   -//package br.gov.frameworkdemoiselle.internal.implementation;
2   -//
3   -//import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
4   -//
5   -//import java.util.ResourceBundle;
6   -//
7   -//import javax.ws.rs.core.Response;
8   -//import javax.ws.rs.ext.ExceptionMapper;
9   -//import javax.ws.rs.ext.Provider;
10   -//
11   -//import org.slf4j.Logger;
12   -//
13   -//import br.gov.frameworkdemoiselle.util.Beans;
14   -//import br.gov.frameworkdemoiselle.util.NamedQualifier;
15   -//
16   -//@Provider
17   -//public class DefaultExceptionMapper implements ExceptionMapper<Throwable> {
18   -//
19   -// @Override
20   -// public Response toResponse(Throwable exception) {
21   -// ResourceBundle bundle = Beans.getReference(ResourceBundle.class, new NamedQualifier("demoiselle-rest-bundle"));
22   -// Logger logger = Beans.getReference(Logger.class);
23   -//
24   -// logger.error(exception.getMessage(), exception);
25   -//
26   -// // throw new DemoiselleException(cause);
27   -//
28   -// String message = bundle.getString("internal.server.error");
29   -// return Response.status(INTERNAL_SERVER_ERROR).entity(message).build();
30   -// }
31   -//}
  1 +package br.gov.frameworkdemoiselle.internal.implementation;
  2 +
  3 +import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
  4 +
  5 +import java.util.ResourceBundle;
  6 +
  7 +import javax.ws.rs.core.Response;
  8 +import javax.ws.rs.ext.ExceptionMapper;
  9 +import javax.ws.rs.ext.Provider;
  10 +
  11 +import org.slf4j.Logger;
  12 +
  13 +import br.gov.frameworkdemoiselle.util.Beans;
  14 +import br.gov.frameworkdemoiselle.util.NameQualifier;
  15 +
  16 +@Provider
  17 +public class DefaultExceptionMapper implements ExceptionMapper<Throwable> {
  18 +
  19 + @Override
  20 + public Response toResponse(Throwable exception) {
  21 + ResourceBundle bundle = Beans.getReference(ResourceBundle.class, new NameQualifier("demoiselle-rest-bundle"));
  22 + Logger logger = Beans.getReference(Logger.class);
  23 +
  24 + logger.error(exception.getMessage(), exception);
  25 +
  26 + String message = bundle.getString("internal.server.error");
  27 + return Response.status(INTERNAL_SERVER_ERROR).entity(message).build();
  28 + }
  29 +}
... ...