日期:2014-05-17  浏览次数:20641 次

easyui+Struts2+json,报错
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是不是正常。