action的参数类型有String、Integer、Long、Double、Float、DateTime、Date、Time、Boolean、Decimal、List、Map、Object、Xml、Table
如果要传json格式的数据需要把action中的参数类型设置为Object

action的调用分两种情况
第一种:在x5平台内部调用使用X5提供的调用action的API,需要自己构造ObjectParam类型的参数
如下:

 var context = this.getContext();
       var valuejson = {"id":"1","fSendName":"快递","fCost":"免邮","fState":"1"};
       // 构造参数
       var param = new biz.Request.ActionParam();
       var objectParam = new biz.Request.ObjectParam(valuejson);
       param.setObject("jsonParam", objectParam);
       // 调用动作
       biz.Request.sendBizRequest({
            "context" : context,
			"action" : "jsonParamAction",
			"parameters":param,
            "callback" : function(data) {
				data.ignoreError = false;
				if (data.state) {
					justep.Util.hint("传入自定义对象参数调用成功");
					// 输出返回结果
					TextOut.setText(result, data.response);
				}
			}	
         });

需要注意的是new biz.Request.ObjectParam的时候有两个参数,如果后端有单独java类去json,可以设置第二个参数为java的类名,如下:
var objectParam = new biz.Request.ObjectParam({
name : “霍金”,
sex : “男”,
age : 70
},“demo.DemoObject”);
这个平台案例中就有,可以参考/UI2/demo/actions/process/invokeAction/mainActivity.w中“自定义对象参数”调用action的实现
其中中的demo.DemoObject对应的是其中中的/BIZ/demo/actions/logic/code/src/demo/DemoObject.java

第二种:用ajax调用,这种情况一般是在地方集成js中调用X5的action,需要JSON.stringify()对json传进行处理
如下:

   var valuejson = {"id":"1","fSendName":"快递","fCost":"免邮","fState":"1"};
 $.ajax({
                        async: false,
                        type: 'GET',
                        dataType: 'json',
                        url: "/x5/UI2/system/service/common/bizAction.j",
                        data: {                              
                                process: '/appdemo/test/process/date/dateProcess',
                                activity: 'mainActivity',
                                action: 'jsonParamAction',                              
                                jsonParam: JSON.stringify(valuejson) //给action中的object类型的jsonParam参数传参
                        },
                        error: function(error ,status,text){       
                                alert("---失败---");               
                        },
                        success: function(result){
                                alert("---成功---"); 
                        }
             });