※ 개인적으로 문제가 해결된 방안을 공유하고자 하는 것이며
반드시 해결되지 않을 수 있음을 알려드립니다.
이 외 해결 방법 및 조언 환영합니다.
view에서 controller의 response를 받긴 함.
java.lang.StackOverflowError: null
하기 메세지 반복
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:728) ~[jackson-databind-2.11.4.jar:2.11.4]
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:755) ~[jackson-databind-2.11.4.jar:2.11.4]
view의 콘솔에서는 response 값을 찍는 중 특정 부분에서 출력이 끊기며 수백줄 반복 출력
- 원인
우선 위의 '특정 부분에서 출력이 끊기며' 이 끊기는 부분이 A클래스 출력이 시작되는 부분이었다. "클래스명": 후 끊김.
Json 값에 dto가 들어있다. 그 dto가 A라는 클래스를 상속받았다.
dto안의 중첩클래스에서도 A라는 클래스를 멤버로 두기 때문에 해당 dto안에선 A라는 클래스가 중첩된다.
- 해결
Json에 담지 않는 중첩클래스 선언부에 @JsonBackReference 어노테이션은 사용하여 직렬화를 수행하지 않도록 알려주었더니 해당 오류는 발생하지 않고 정상적으로 데이터를 받을 수 있었다.
* 직렬화란?
데이터를 연속적인 데이터로 변환하는 것을 말한다.
우리가 '데이터를 전송하기 위해 Json형태로 만드는 과정' 같은 것들을 예로 들 수 있다.
'스프링 > 오류 관련' 카테고리의 다른 글
| [Spring Boot] p, div, span 등 태그 내부 태그가 적용되지 않을 때 (0) | 2022.01.09 |
|---|---|
| [Spring Boot] paging을 위한 작성중 오류(임시해결) (0) | 2021.08.11 |
| [Spring Boot] DB에서 쿼리 결과 반환 시 카멜/언더스코어 관련 컬럼 오류 (0) | 2021.07.16 |
| [Spring Boot] DBConfiguration, *mapper.xml 관련 오류 (0) | 2021.07.07 |
| [SpringBoot] html에서 XMLHttpRequest 요청 시 403에러 (0) | 2021.06.05 |