|
|
@ -38,8 +38,8 @@ public class ControllerExceptionHandler { |
|
|
|
// }
|
|
|
|
|
|
|
|
@ExceptionHandler(value = MethodArgumentNotValidException.class) |
|
|
|
@ResponseBody |
|
|
|
public JsonResponse validateExceptionHandlero(HttpServletRequest req, |
|
|
|
// @ResponseBody
|
|
|
|
public void validateExceptionHandlero(HttpServletRequest req,HttpServletResponse response, |
|
|
|
MethodArgumentNotValidException e){ |
|
|
|
BindingResult bindingResult = e.getBindingResult(); |
|
|
|
// StringBuilder errorMesssage = new StringBuilder();
|
|
|
@ -51,26 +51,29 @@ public class ControllerExceptionHandler { |
|
|
|
// errorMesssage.append(bindingResult.getFieldErrors().get(0).getDefaultMessage());
|
|
|
|
// e.printStackTrace();
|
|
|
|
log.error("MethodArgumentNotValidException",e); |
|
|
|
return JsonResponse.newInstance().fail(CodeEnum.PARAM_NULL.getCode(),bindingResult.getFieldError().getDefaultMessage()); |
|
|
|
// return JsonResponse.newInstance().fail(CodeEnum.PARAM_NULL.getCode(),bindingResult.getFieldError().getDefaultMessage());
|
|
|
|
responseError(response, JsonResponse.newInstance().fail(-1,e.getMessage())); |
|
|
|
} |
|
|
|
|
|
|
|
@ExceptionHandler(value = BindException.class) |
|
|
|
@ResponseBody |
|
|
|
public JsonResponse handleBindException(BindException e) { |
|
|
|
// @ResponseBody
|
|
|
|
public void handleBindException(HttpServletResponse response, BindException e) { |
|
|
|
// ex.getFieldError():随机返回一个对象属性的异常信息。如果要一次性返回所有对象属性异常信息,则调用ex.getAllErrors()
|
|
|
|
FieldError fieldError = e.getFieldError(); |
|
|
|
StringBuilder sb = new StringBuilder(); |
|
|
|
sb.append(fieldError.getField()).append("=[").append(fieldError.getRejectedValue()).append("]") |
|
|
|
.append(fieldError.getDefaultMessage()); |
|
|
|
log.error("BindException", e); |
|
|
|
return JsonResponse.newInstance().fail(-11,sb.toString()); |
|
|
|
responseError(response, JsonResponse.newInstance().fail(-1,e.getMessage())); |
|
|
|
// return JsonResponse.newInstance().fail(-11,sb.toString());
|
|
|
|
} |
|
|
|
|
|
|
|
@ExceptionHandler(value = HttpMessageNotReadableException.class) |
|
|
|
@ResponseBody |
|
|
|
public JsonResponse handleHttpMessageNotReadableException(HttpMessageNotReadableException e) { |
|
|
|
// @ResponseBody
|
|
|
|
public void handleHttpMessageNotReadableException(HttpServletResponse response, HttpMessageNotReadableException e) { |
|
|
|
log.error("HttpMessageNotReadableException", e); |
|
|
|
return JsonResponse.newInstance().fail(-12,e.getMessage()); |
|
|
|
// return JsonResponse.newInstance().fail(-12,e.getMessage());
|
|
|
|
responseError(response, JsonResponse.newInstance().fail(-1,e.getMessage())); |
|
|
|
} |
|
|
|
|
|
|
|
@ExceptionHandler(value = BaseException.class) |
|
|
@ -83,18 +86,24 @@ public class ControllerExceptionHandler { |
|
|
|
} else { |
|
|
|
ok = JsonResponse.newInstance().fail(e.getCode(),e.getMessage()); |
|
|
|
} |
|
|
|
responseError(response, ok); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
private void responseError(HttpServletResponse response, JsonResponse ok) { |
|
|
|
try { |
|
|
|
HttpServletUtil.responseJson(response, |
|
|
|
JacksonUtil.beanToJson(ok)); |
|
|
|
} catch (Exception e1) { |
|
|
|
log.error("返回异常出错:", e); |
|
|
|
log.error("返回异常出错:", e1); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ExceptionHandler(value = Exception.class) |
|
|
|
@ResponseBody |
|
|
|
public JsonResponse jsonExceptionHandler(HttpServletRequest req, Exception e) { |
|
|
|
// @ResponseBody
|
|
|
|
public void jsonExceptionHandler(HttpServletRequest req, HttpServletResponse response, Exception e) { |
|
|
|
log.error("Exception",e); |
|
|
|
return JsonResponse.newInstance().fail(-1,e.getMessage()); |
|
|
|
responseError(response, JsonResponse.newInstance().fail(-1,e.getMessage())); |
|
|
|
// return JsonResponse.newInstance().fail(-1,e.getMessage());
|
|
|
|
} |
|
|
|
} |