- Today
- Yesterday
- Total
메이쁘
[Spring] ... is neither an array nor a List nor a Map; returned value was [] 오류 해결 방법 (@SerializeObject, @RequestParam) 본문
[Spring] ... is neither an array nor a List nor a Map; returned value was [] 오류 해결 방법 (@SerializeObject, @RequestParam)
메이쁘 2020. 5. 11. 22:36
웹쪽 코딩하다가 발생한 에러.
@RequestParam, @SerializeObject 등 Spring POST 로 parameter를 넘길 때 볼 수 있는 에러였다.
결론부터 말하자면
배열도 맵도 리스트도 아닌 값이 들어왔단 소리.
*** 필자는 $.ajax에서 send 하는 data를 <form> 내 input 값을 담은 @SerializeObject를 전송받아 사용하려던 중 발생했다.
이 값을 console.log로 까보니
[] 빈 껍데기만 들어가있다.
다른 블로그를 참고해보니
array = [ { "ele" : value } , { "ele" : value } ] 로 되어있는 배열을 보냈다는 것이다.
그래서 array[index][ele] = value로 인식해서 오류가 발생한다는 것.
*** 원래라면 array[index].ele = value 와 같이 object로 인식해야 하는데, 배열로 인식했다.
그럼 해결 방법은 뭐냐?
1. 사용하려는 값만 따로 빼서 변수로 보낸다.
ex) var result = result;
2. 별도 obj를 만들고, 거기에 json으로 값을 넣어주는 것이다.
ex) var obj = {
ele : value
};
3. 아직 시도해보지 않았지만 2와 같은 방법으로 obj 안에 List(또는 Array) 로 넣는다.
필자는 1로 필요한 변수만 빼와서 2와 같은 방법으로 객체 안에 넣고 진행했다.
다른 방법은... 없다고 한다...!!!
감사합니다!
참고
https://m.blog.naver.com/PostView.nhn?blogId=mu_kk&logNo=220617362843&proxyReferer=https:%2F%2Fwww.google.com%2F
'Technology > Web - Spring' 카테고리의 다른 글
[Spring] Spring Annotation 으로 쓰이는 @Autowired 를 사용하는 이유 쉽게 풀어보자! (5) | 2020.07.22 |
---|---|
[WEB CS] SPA(Single Page Application) 에 대해 간단 개념 정리! (0) | 2020.07.21 |
[WEB CS] Cookie, Session, Cache (쿠키, 세션, 캐시) 에 대해, 그리고 차이점에 대해 알아보자! (0) | 2020.07.19 |
[WEB CS] JSP 처리 과정(= WAS를 통한 웹 페이지 출력 과정) (0) | 2020.07.18 |
[WEB CS] 웹 서버와 WAS(Web Application Server) 의 의미, 차이점, 웹 동작 원리를 알아보자! (0) | 2020.07.18 |