【发布时间】:2014-01-13 04:31:49
【问题描述】:
我正在使用 extjs ajax 将修改后的记录发送到 java side rest 服务,这里是代码..
Ext.Ajax.request( {
url : saveUrl,
params: {unitMonthList: Ext.JSON.encode(jsonData)},
method : "POST",
isUpload : true,
timeout: 300000,
jsonData : jsonData,
success : function(resp, opts) {
var value = resp.responseText;
var result = JSON.parse(value);
Ext.MessageBox.hide();
if(result.success){
var umCostStore = Ext.data.StoreManager.lookup('Unitmonths');
umCostStore.commitChanges();
Ext.MessageBox.hide();
Ext.Msg.show({
title : 'Notification',
msg : 'Data saved successfully!',
buttons : 1,
cls : 'msgBtnCls'
});
}
},
failure : function(resp, opts) {
Ext.MessageBox.hide();
Ext.Msg.show({
title : 'Notification',
msg : 'Error occurred. Please try again later..',
buttons : 1,
cls : 'msgBtnCls'
});
}
});
@POST
@Path("saveUnitMonths")
@Produces("application/json")
public String saveUnitMonths(@Context HttpServletRequest request,
@Context ServletContext servletContext) throws ParseException {
Gson gson = new Gson();
String unitMonthList = request.getParameter("unitMonthList");
}
上面的代码工作正常,最多 5 条记录,但超过 5 条记录的 ajax 请求失败,给我 500 错误代码并执行失败回调函数。 它根本不是在调用服务器端。 请帮助我了解超过 5 条记录的问题所在。 如果我删除了 Ext.JSON.encode(jsonData) 并直接使用 jsonData ,那么 Ajax 调用服务器端的记录也超过 5 条,但我无法在服务器端处理非 JSON 数据。
谢谢,
【问题讨论】: