415 오류는
- 잘못된 Content-Type: 클라이언트가 전송한 데이터의 형식이 서버에서 예상하는 형식과 일치하지 않을 때
- 서버의 제한: 서버가 특정 미디어 타입을 처리하지 않도록 설정되어 있을 수 있음
- API 문서 미비: API 문서에서 요구하는 형식에 맞지 않는 데이터를 보냈을 때
발생
Dispatcher-servlet 설정 파일에
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<property name="messageConverters">
<list>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
</list>
</property>
</bean>
를 추가하면 해결됨
추가한 설정은 Spring MVC에서 HTTP 요청과 응답을 처리하는 방식을 정의함
- RequestMappingHandlerAdapter:
- 이 어댑터는 Spring MVC의 컨트롤러 메서드와 HTTP 요청을 매핑하는 역할을 함
즉, 클라이언트의 요청을 특정 컨트롤러 메서드에 연결하는 기능을 담당
- 이 어댑터는 Spring MVC의 컨트롤러 메서드와 HTTP 요청을 매핑하는 역할을 함
- Message Converters:
- 메시지 변환기는 HTTP 요청과 응답 본문을 Java 객체와 JSON 또는 XML과 같은 형식 간에 변환하는 데 사용
클라이언트가 JSON 형식의 데이터를 보낼 때
서버는 이를 Java 객체로 변환해야 하고 반대로 Java 객체를 JSON 형식으로 응답해야 할 때도 이 변환기가 필요
- 메시지 변환기는 HTTP 요청과 응답 본문을 Java 객체와 JSON 또는 XML과 같은 형식 간에 변환하는 데 사용
- MappingJackson2HttpMessageConverter:
- 이 변환기는 Jackson 라이브러리를 사용하여 Java 객체를 JSON 형식으로 변환하고
JSON 데이터를 Java 객체로 변환
이를 설정함으로써 클라이언트가 JSON 형식으로 데이터를 전송할 경우
서버가 이를 올바르게 처리할 수 있게 됨
- 이 변환기는 Jackson 라이브러리를 사용하여 Java 객체를 JSON 형식으로 변환하고