easyui+Struts2+json写了一段小程序,现在添加信息的时候数据库能保存成功,但是不能在页面执行接收json的函数,报错“no default parameter defined for result of type json”,搜索无果,特来请教。
jsp代码:
- JScript code
function saveUser(){ $('#addForm').form('submit',{ url: url, success: function(result){ alert(result); var result = eval('('+result+')'); alert(result); if (result.success){ $('#addDialog').dialog('close'); // close the dialog $('#test').datagrid('reload'); // reload the user data } else { $.messager.show({ title: 'Error', msg: result.message }); } } }); }
STRUTS.xml
- XML code
<action name="addRyxx" class="com.impms.action.RyxxAction" method="add"> <result name="success" type="json" > </result> </action>
Action
- Java code
public String add() { int flag = RyxxImpl.addRyxx(ryxx); if(flag==1){ //添加成功 success = true; message = "人员信息添加成功!"; }else{ //添加不成功 success = false; message = "人员信息添加不成功,请检查!"; } Map<String, Object> jsonMap = new HashMap<String, Object>();//定义map jsonMap.put("status", success); jsonMap.put("message", message); result = JSONObject.fromObject(jsonMap);//格式化result 一定要是JSONObject System.out.println(result); return SUCCESS; }
通过浏览器能得到json字符串,但是只能得到很少次,用IE9的开发人员工具跟踪,很多都显示已中止,然后跳转到我的index.jsp中,哎,今天卡了一天了。。。。
------解决方案--------------------
加个随机数试试。用FIREBUG看一下响应JSON是不是正常。