The article presents tips on how to fix 415 Unsupported Media Type error while working with AngularJS & SpringMVC web application when one tries to POST JSON data using $http service. The sole reason I wanted to write this blog is to help many of my friends who are most likely to hit this one when they work on posting JSON data to SpringMVC web controller using $http service.
Possible scenarios:
- Most likely, you might not have included Jackson libraries in the classpath. Thus, go to http://wiki.fasterxml.com/JacksonDownload and download all the jar files. Alternatively, get slightly back-dated version of all of the libraries in one jar file from http://www.java2s.com/Code/Jar/j/Downloadjacksonall199jar.htm. Once downloaded, put these libraries (jar files) in WEB-INF/lib folder. Start the server and you should be all set.
- JSON request data may not be correctly created. Make sure you have request data in following JSON format:
var dataObj = { name1 : value1, name2 : value2 }
Assertions:
- Make sure that data is passed in “application/json” format. Well, this is the default format and you do not have to do anything for this until you have changed the default to another data format somwehere in your code.
- Have the controller method look like this:
public @ResponseBody String methodName( @RequestBody SomeDomainObject someObj ) { }
Create a domain object with fields matching the JSON request parameters names. In this case, it would be name1, name2.
For sample code, take a look at following page:
http://hello-angularjs.appspot.com/angularjs-http-service-ajax-post-json-data-code-example
…
[adsenseyu1]
- Confounder Features & Machine Learning Models: Examples - October 2, 2024
- Credit Card Fraud Detection & Machine Learning - September 26, 2024
- Neural Network Types & Real-life Examples - September 24, 2024
I found it very helpful. However the differences are not too understandable for me