diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxAuth2ExceptionSerializer.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxAuth2ExceptionSerializer.java index c76f611ec..71f0f7db5 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxAuth2ExceptionSerializer.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/component/PigxAuth2ExceptionSerializer.java @@ -40,7 +40,7 @@ public class PigxAuth2ExceptionSerializer extends StdSerializer(e, headers, - HttpStatus.valueOf(status)); + HttpStatus.valueOf(status)); } - - return new ResponseEntity<>(new PigxAuth2Exception(e.getMessage()), headers, - HttpStatus.valueOf(status)); + return new ResponseEntity<>(new PigxAuth2Exception(e.getMessage(), e.getOAuth2ErrorCode()), headers, + HttpStatus.valueOf(status)); } } diff --git a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/exception/PigxAuth2Exception.java b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/exception/PigxAuth2Exception.java index 94bb91fa9..780f9eb68 100644 --- a/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/exception/PigxAuth2Exception.java +++ b/pigx-common/pigx-common-security/src/main/java/com/pig4cloud/pigx/common/security/exception/PigxAuth2Exception.java @@ -19,6 +19,7 @@ package com.pig4cloud.pigx.common.security.exception; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.pig4cloud.pigx.common.security.component.PigxAuth2ExceptionSerializer; +import lombok.Getter; import org.springframework.security.oauth2.common.exceptions.OAuth2Exception; /** @@ -28,8 +29,15 @@ import org.springframework.security.oauth2.common.exceptions.OAuth2Exception; */ @JsonSerialize(using = PigxAuth2ExceptionSerializer.class) public class PigxAuth2Exception extends OAuth2Exception { + @Getter + private String errorCode; public PigxAuth2Exception(String msg) { super(msg); } + + public PigxAuth2Exception(String msg, String errorCode) { + super(msg); + this.errorCode = errorCode; + } }