회원가입을 처리하는 서비스와 컨트롤러를 만든 후 curl 명령어로 POST 요청을 통해 회원가입 테스트를 진행했지만, 상태 코드가 406 Not Acceptable로 반환되는 상황이었다.
데이터베이스에 값은 잘 저장되는 것이 확인되었으나, 상태 코드가 200 OK가 아닌 406이 반환된 것이다.
@AllArgsConstructor
@NoArgsConstructor
public class MemberRegisterResponse {
private String message;
}
response로 변환을 할때 Jackson 라이브러리가 객체의 필드값을 읽기 위해서는 getter메서드를 호출한다. 만일 getter 메서드가 없을 때 Jackson 라이브러리가 해당 객체 필드를 읽을 수 없기 때문에 JSON 변환이 실패하는 것이었다.
Request단에는 Getter 어노테이션을 적어서 문제가 없었지만 Response에는 어노테이션을 깜박해서 이런 상황이 발생되었다.
@Getter
@AllArgsConstructor
@NoArgsConstructor
public class MemberRegisterResponse {
private String message;
}
Dto에 @Getter를 두어 해결되었다.