Gson의 StackOverflowError는 훼이크고, 실수.

Gson을 이용해서 json 스트링으로 변환하는데 Gson 쪽에서 StackOverflowError가 계속해서 발생했다. 자바쪽에서 테스트를 해보니 정상적으로 돌아간다.

구글링을 해보니 자기 참조의 형태가 되서 순환되는 경우가 아니라면 발생하지 않는다고 하는데, 클래스 구조를 아무리봐도 순환이 발생할 수 있는 구조는 아니었다.

조금 헤매다가 문제가 있는 부분을 발견했다. 데이터를 래핑하는 클래스에서 맵으로 데이터들을 추가하는데, 여기서 원래 넣어야 할 데이터는 feedback인데, 여기에 자기 자신을 추가해버리니 순환이 되어버렸다. 신중하게 코드를 작성할 필요가 있겠다.

댓글 남기기