Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1 | espaco | 1 | package br.gov.al.saude.rhd.web.managebean.util; |
| 2 | |||
| 3 | import java.io.PrintWriter; |
||
| 4 | import java.io.StringWriter; |
||
| 5 | import java.util.Map; |
||
| 6 | |||
| 7 | import javax.faces.bean.ManagedBean; |
||
| 8 | import javax.faces.context.FacesContext; |
||
| 9 | |||
| 10 | import org.springframework.context.annotation.Scope; |
||
| 11 | import org.springframework.stereotype.Component; |
||
| 12 | |||
| 13 | @Component |
||
| 14 | @ManagedBean |
||
| 15 | @Scope("view") |
||
| 16 | public class ErrorPageBeanBean { |
||
| 17 | |||
| 18 | public String getStackTrace() { |
||
| 19 | FacesContext context = FacesContext.getCurrentInstance(); |
||
| 20 | Map<String, Object> requestMap = context.getExternalContext().getRequestMap(); |
||
| 21 | Throwable ex = (Throwable) requestMap.get("javax.servlet.error.exception"); |
||
| 22 | StringWriter sw = new StringWriter(); |
||
| 23 | PrintWriter pw = new PrintWriter(sw); |
||
| 24 | ex.printStackTrace(pw); |
||
| 25 | String trace = sw.toString(); |
||
| 26 | return trace; |
||
| 27 | } |
||
| 28 | |||
| 29 | public String getMensagemErro() { |
||
| 30 | FacesContext context = FacesContext.getCurrentInstance(); |
||
| 31 | Map<String, Object> requestMap = context.getExternalContext().getRequestMap(); |
||
| 32 | Throwable ex = (Throwable) requestMap.get("javax.servlet.error.exception"); |
||
| 33 | if (ex.getMessage() != null) { |
||
| 34 | if (ex.getMessage().contains("br.gov.al.saude.framework.core.exception.NegocioException")) { |
||
| 35 | return ex.getMessage().substring(ex.getMessage().indexOf("br.gov.al.saude.framework.core.exception.NegocioException: ") + "br.gov.al.saude.framework.core.exception.NegocioException: ".length()); |
||
| 36 | } else { |
||
| 37 | return ex.getMessage(); |
||
| 38 | } |
||
| 39 | } else { |
||
| 40 | return "Ocorreu um erro inesperado. Operação inválida!"; |
||
| 41 | } |
||
| 42 | } |
||
| 43 | } |