|
@@ -2,8 +2,12 @@ package com.dragoninfo.dcuc.authweb.exception;
|
|
|
|
|
|
|
|
|
|
import com.dragoninfo.dcuc.common.enums.ErrorCodeEnum;
|
|
import com.dragoninfo.dcuc.common.enums.ErrorCodeEnum;
|
|
|
|
+import com.dragoninfo.dcuc.common.exception.GmConfidentialityException;
|
|
|
|
+import com.dragoninfo.dcuc.common.exception.GmIntegrityException;
|
|
|
|
+import com.dragoninfo.dcuc.common.exception.GmNonRepudiationException;
|
|
import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
|
|
import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
|
|
import com.dragonsoft.duceap.commons.util.json.JsonUtils;
|
|
import com.dragonsoft.duceap.commons.util.json.JsonUtils;
|
|
|
|
+import feign.FeignException;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.springframework.core.annotation.Order;
|
|
import org.springframework.core.annotation.Order;
|
|
@@ -55,6 +59,17 @@ public class RespExceptionHandler implements HandlerExceptionResolver {
|
|
response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());
|
|
response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());
|
|
String message = Objects.requireNonNull(((BindException) ex).getFieldError()).getDefaultMessage();
|
|
String message = Objects.requireNonNull(((BindException) ex).getFieldError()).getDefaultMessage();
|
|
fail = new ResponseStatus(String.valueOf(ErrorCodeEnum.REQUEST_PARAM.getValue()), String.format(ErrorCodeEnum.REQUEST_PARAM.getLabel(), message));
|
|
fail = new ResponseStatus(String.valueOf(ErrorCodeEnum.REQUEST_PARAM.getValue()), String.format(ErrorCodeEnum.REQUEST_PARAM.getLabel(), message));
|
|
|
|
+ } else if (ex instanceof FeignException) {
|
|
|
|
+ String message = ex.getMessage();
|
|
|
|
+ if (message.contains(GmConfidentialityException.ERROR_MESSAGE)) {
|
|
|
|
+ fail = ResponseStatus.fail(String.valueOf(HttpStatus.NOT_ACCEPTABLE.value()), GmConfidentialityException.ERROR_MESSAGE);
|
|
|
|
+ } else if (message.contains(GmIntegrityException.ERROR_MESSAGE)) {
|
|
|
|
+ fail = ResponseStatus.fail(String.valueOf(HttpStatus.NOT_ACCEPTABLE.value()), GmIntegrityException.ERROR_MESSAGE);
|
|
|
|
+ } else if (message.contains(GmNonRepudiationException.ERROR_MESSAGE)) {
|
|
|
|
+ fail = ResponseStatus.fail(String.valueOf(HttpStatus.NOT_ACCEPTABLE.value()), GmNonRepudiationException.ERROR_MESSAGE);
|
|
|
|
+ } else {
|
|
|
|
+ fail = ResponseStatus.fail("500", "未知异常[" + ex.getMessage() + "]");
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
fail = ResponseStatus.fail("500", "未知异常[" + ex.getMessage() + "]");
|
|
fail = ResponseStatus.fail("500", "未知异常[" + ex.getMessage() + "]");
|
|
}
|
|
}
|