본문 바로가기
오류 및 해결

[Spring Security] [invalid_token_response] An error occurred while attempting to retrieve the OAuth 2.0 Access Token Response

by 서피 2021. 6. 22.

Spring OAuth 2.0 구글 로그인 직후 발생했다.

메세지를 살펴보면 'jsonMessageConverter'가 null이기 때문이다.

jsonMessageConverter가 어떤 변수인지 찾으면 답이 나올 듯하다.

 

오류가 발생한 GenericHttpMessageConverter클래스의 read메소드를 찾는다.

해당 클래스에 jsonMessageConverter라는 변수는 없다.

 

 

따라서 부모 인터페이스인 HttpMessageConverter로 이동해서 찾는다.

 

 

여기에도 jsonMessageConverter는 없다.

 

 

프로젝트 내에서 HttpMessageConverter의 레퍼런스를 찾는다.

Error라는 단어를 포함하고 있는 두 번째 레퍼런스 OAuth2ErrorHttpMessageConverter로 이동한다.

 

 

jsonMessageConverter변수를 찾았다.

해당 변수가 null이어서 발생한 오류이므로, getJsonMessageConverter() 메소드로 이동한다.

 

 

 

세 가지 if 조건이 모두 false이기 때문에 null을 리턴하고 있다.

패키지 경로명과 boolean 변수명을 보면 Json을 convert할 라이브러리가 없기 때문으로 추측된다.

 

 

pom.xml에 Gson 디펜던시를 추가해주었다.

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.7</version>
</dependency>

댓글