티스토리 뷰
오류
[오류]com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of~
김쓰로그 2022. 10. 12. 15:29
더보기
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `springdatajpa.study.web.dto.UserRegisterDto` (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
at [Source: (org.springframework.util.StreamUtils$NonClosingInputStream); line: 2, column: 5]
오늘 공부를 하고있던 와중 위와 같은 오류가 발생하였습니다.
오류가 발생한 부분
@PostMapping
public ResponseEntity<String> postUser(@RequestBody UserRegisterDto registerDto) {
log.info("/user Post API {}", registerDto.toString());
userService.addUser(registerDto);
return ResponseEntity.ok().body("success");
}
오류가 발생하였던 이유
컨트롤러에서 전달된 JSON을 @RequestBody를 통해 DTO 객체로 변환하는 과정에서 발생한 오류인 것 같습니다.
오류를 읽어보면 "no Creators, like default constructor, exist" 라고 적혀있습니다.
이는 객체를 생성할 기본 생성자가 없다는 의미라고 생각했습니다.
오류 해결
JSON을 변환할 객체에 기본생성자를 생성하면 되고
Lombok을 사용한다면 @NoArgsConstructor을 붙여주면됩니다.
'오류' 카테고리의 다른 글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 백준#잃어버린 괄호#1541
- this()
- Spring
- 7568
- querydsl
- HTTP#HTTP특징
- 백엔드#게시판
- 자바
- 오류
- 덧칠하기
- arraylist
- 1978
- springboot
- list
- 스프링
- 1316번
- 파이썬
- 11659
- 회고
- 게시판#자바#JPA#Entity
- 백준#서강근육맨#20300
- controller
- 대충 만든 자판
- 4673번
- MVC
- 프로그래머스
- 서블릿#Servlet
- 사탕 게임#백준#3085
- 백준
- java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
글 보관함