ajax 와 Controller에서 @RequestBody를 이용한 간단한 테스트를 하려했는데 계속 오류가 ..
HTTP 상태 415 – 지원되지 않는 Media Type 에러는 지원되지 않는 형식으로 클라이언트가 요청을 해서 서버가 요청에 대한 승인을 거부한 오류를 의미 한다.
보통 ContentType, Content Encoding 데이터를 확인해야한다.
$.ajax({
type : "POST",
url : "testRequestBody",
async : true,
data : JSON.stringify(info),
dataType:"json",
contentType : "application/json;charset=UTF-8",
success : function(data) {
},
error : function(error) {
console.log(error);
}
});
잘보냈는데 왜...안될까..
고민하던중 jackson(JSON 데이터 구조를 처리해주는 라이브러리) 관련 dependency가 이상한가..라는 생각을 했다
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.0.4</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.0.4</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.0.4</version>
</dependency>
얘네만 넣으면 될 줄 알았는데 계속되는 415 ERROR!
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.4.2</version>
</dependency>
이 녀석을 넣으니 해결되었다... ㅎㅎ