ExceptionHandlerAdvice.java 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package com.uas.eis.exception;
  2. import javax.servlet.http.HttpServletRequest;
  3. import com.uas.eis.entity.ErrorMsg;
  4. import org.apache.log4j.Logger;
  5. import org.springframework.http.HttpStatus;
  6. import org.springframework.ui.ModelMap;
  7. import org.springframework.util.StringUtils;
  8. import org.springframework.web.bind.annotation.ControllerAdvice;
  9. import org.springframework.web.bind.annotation.ExceptionHandler;
  10. import org.springframework.web.bind.annotation.ResponseBody;
  11. import org.springframework.web.bind.annotation.ResponseStatus;
  12. import com.uas.eis.utils.StringUtil;
  13. @ControllerAdvice
  14. public class ExceptionHandlerAdvice {
  15. private final static Logger logger = Logger.getLogger(ExceptionHandlerAdvice.class);
  16. /**
  17. * 处理未被发现处理的运行时抛出异常
  18. *
  19. * @param ex
  20. * @return
  21. */
  22. @ExceptionHandler(RuntimeException.class)
  23. @ResponseStatus(value = HttpStatus.INTERNAL_SERVER_ERROR)
  24. @ResponseBody
  25. public ModelMap handleUnexpectedServerError(RuntimeException ex, HttpServletRequest request) {
  26. ModelMap map = new ModelMap();
  27. //logger.error(ex);
  28. ex.printStackTrace();
  29. map.put("errCode", -1);
  30. map.put("errMsg", "server error");
  31. map.put("errDesc",ex.getMessage());
  32. return map;
  33. }
  34. /**
  35. * 处理通过BaseUtil.showError抛出的异常
  36. *
  37. * @param ex
  38. * @return
  39. */
  40. @ExceptionHandler(SystemException.class)
  41. @ResponseStatus(value = HttpStatus.INTERNAL_SERVER_ERROR)
  42. @ResponseBody
  43. public ModelMap handleSystemError(SystemException ex, HttpServletRequest request) {
  44. ModelMap map = new ModelMap();
  45. ErrorMsg errorMsg = ex.getErrorMsg();
  46. map.put("errCode", errorMsg.getErrCode());
  47. map.put("errMsg", errorMsg.getErrMsg());
  48. map.put("errDesc",errorMsg.getErrDesc());
  49. return map;
  50. }
  51. }