Tôi đang cố gắng gửi một yêu cầu POST đến một servlet. Yêu cầu được gửi qua jQuery theo cách này:
var productCategory = new Object();
productCategory.idProductCategory = 1;
productCategory.description = "Descrizione2";
newCategory(productCategory);
nơi mới Thể loại
function newCategory(productCategory)
{
$.postJSON("ajax/newproductcategory", productCategory, function(
idProductCategory)
{
console.debug("Inserted: " + idProductCategory);
});
}
và postJSON là
$.postJSON = function(url, data, callback) {
return jQuery.ajax({
'type': 'POST',
'url': url,
'contentType': 'application/json',
'data': JSON.stringify(data),
'dataType': 'json',
'success': callback
});
};
Với fireorms tôi thấy rằng JSON được gửi chính xác:
{"idProductCategory":1,"description":"Descrizione2"}
Nhưng tôi nhận được loại phương tiện truyền thông không được hỗ trợ. Bộ điều khiển mvc mùa xuân có chữ ký
@RequestMapping(value = "/ajax/newproductcategory", method = RequestMethod.POST)
public @ResponseBody
Integer newProductCategory(HttpServletRequest request,
@RequestBody ProductCategory productCategory)
Mấy hôm trước nó làm việc, bây giờ thì không. Tôi sẽ hiển thị thêm mã nếu cần. Cảm ơn
var productCategory = { idProductCategory: 1, description: "Descrizione2" };
ngắn gọn và dễ đọc hơn? Bạn có cần nói với Spring để chấp nhậnapplication/json
cụ thể không? Nói cách khác, nó có mong đợi dữ liệu đến ở dạng không?