I receive 415 HTTP Unsupported Media Type error with the following code:
Spring MVC Controller:
@RequestMapping(value="/addItem", method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<String> addItem(@RequestBody final ToDoItem item) {
toDoItemDao.create(item);
return new ResponseEntity<String>(HttpStatus.OK);
}
JavaScript AJAX request:
$.ajax({
url: ToDoDemo.serverRoot + "/addItem",
type:'POST',
contentType: 'application/json',
dataType:"json",
data: JSON.stringify(oItem),
success: function() {
...
},
error: function(jqXHR, strStatus, strErrorThrown) {
...
}
});
pom.xml:
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>1.9.8</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.8</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-jaxrs</artifactId>
<version>1.9.7</version>
</dependency>
There are plenty of similar questions on StackOverflow I tried to use solutions from them, but none of the worked for me. What am I missing?