J'essaye d'envoyer une requête POST à un servlet. La requête est envoyée via jQuery de cette manière:
var productCategory = new Object();
productCategory.idProductCategory = 1;
productCategory.description = "Descrizione2";
newCategory(productCategory);
où est newCategory
function newCategory(productCategory)
{
$.postJSON("ajax/newproductcategory", productCategory, function(
idProductCategory)
{
console.debug("Inserted: " + idProductCategory);
});
}
et postJSON est
$.postJSON = function(url, data, callback) {
return jQuery.ajax({
'type': 'POST',
'url': url,
'contentType': 'application/json',
'data': JSON.stringify(data),
'dataType': 'json',
'success': callback
});
};
Avec firebug, je vois que JSON est envoyé correctement:
{"idProductCategory":1,"description":"Descrizione2"}
Mais j'obtiens 415 type de support non pris en charge. Le contrôleur Spring mvc a une signature
@RequestMapping(value = "/ajax/newproductcategory", method = RequestMethod.POST)
public @ResponseBody
Integer newProductCategory(HttpServletRequest request,
@RequestBody ProductCategory productCategory)
Il y a quelques jours, cela fonctionnait, maintenant ce n'est pas le cas. Je montrerai plus de code si nécessaire. Merci
var productCategory = { idProductCategory: 1, description: "Descrizione2" };
plus concis et plus facile à lire? Avez-vous besoin de dire à Spring d'accepterapplication/json
spécifiquement? En d'autres termes, s'attend-il à ce que les données se présentent sous une forme?