最近遇到的一个问题X5 Action能接收Object 的参数
var params = new justep.Request.ActionParam();
//对象参数,ObjectParam对应的class必须有包名
var objectSerialize = {name: "霍金", sex: "男", age: 70};
//var objectSerialize = "<DemoObject name='霍金' sex='男' age='70'></DemoObject>";
var objectParam = new justep.Request.ObjectParam(objectSerialize, "demo.DemoObject");
params.setObject("param_object", objectParam);
justep.Request.sendBizRequest2({
contentType: "application/json",//这个代码不能忘记
action: "demoObjectTest",
parameters: params,
callback: function(result) {
if (result.state) {
alert("调用成功!");
} else {
throw new Error("调用失败!|" + result.response.message);
}
}
});
否则报错:
013-11-02 21:30:43 invokeActions error!
com.justep.model.exception.ModelException: java.lang.NullPointerException
at com.justep.system.action.Engine.invokeActions(Unknown Source)
at com.justep.business.server.BusinessServer.doAction(Unknown Source)
at com.justep.business.server.BusinessServer.doExcute(Unknown Source)
at com.justep.business.server.BusinessServer.excute(Unknown Source)
at com.justep.business.server.BusinessServerServlet.execService(Unknown Source)
at com.justep.business.server.BusinessServerServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at com.justep.x.bs.BusinessServerServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
at demo.DemoObject.reader(DemoObject.java:66)
at com.justep.system.transform.ActionParameterTransform.transObjectParam(Unknown Source)
at com.justep.system.transform.ActionParameterTransform.transParam(Unknown Source)
at com.justep.system.transform.ActionParameterTransform.helpTransformByElement(Unknown Source)
at com.justep.system.transform.ActionParameterTransform.transform(Unknown Source)
at com.justep.system.transform.RequestTransform.transParamValue(Unknown Source)
at com.justep.system.transform.RequestTransform.transActionParams(Unknown Source)
at com.justep.system.transform.RequestTransform.transform(Unknown Source)
at com.justep.system.action.Engine.translateParameters(Unknown Source)
at com.justep.system.action.Engine.invokeActions(Native Method)
错误原因是:
contentType: "application/json" 这个contentType 指string 发送请求的格式 ,如果不指定默认是如下格式
'application/x-www-form- urlencoded' (其他解释见http://www.cnblogs.com/mumue/archive/2012/05/24/2515984.html)
相关推荐
最近在做项目交互的时候,刚开始向后台传递数据返回 415 ,后来百度添加了 contentType:“application/json“ 之后返回400,然后把传输的数据格式改为json字符串就传输成功了,现在我们来看看 contentType:...
当我们设置`contentType: "application/json"`时,它定义了发送到服务器的数据格式。这在处理JSON数据时尤其有用,因为JSON是一种轻量级的数据交换格式,广泛应用于Web服务和API之间。 1. **contentType参数的作用*...
当我们在AJAX请求中设置contentType为"application/json"时,这个设置会对请求产生以下几个影响: 1. 指定数据格式:当我们设置contentType为"application/json"时,我们实际上是在告诉服务器端,发送到服务器的...
<messageFormatter contentType="application/json/badgerfish" class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/> 6.Add JSON Message builders to the axis2.xml: <messageBuilder contentType=...
ajax传送json格式数据,关键是指定contentType,data要是json格式 如果是restful接口,把type改成对应的post(增)、delete(删)、put(改)、get(查)即可 var post_data={"name":"test001","pass":"xxxx"}; $....
在 DELPHI 开发中,SuperObject 是一个非常流行的库,用于处理 JSON 数据。这个库提供了强大而灵活的 API,使得解析、创建和操作 JSON 对象变得轻而易举。在本文中,我们将深入探讨如何使用 SuperObject 实现 JSON ...
### 所有ContentType类型概述 在互联网通信及文件传输过程中,`Content-Type`是一个非常重要的HTTP头部字段,它用于指示资源的数据格式或类型。通过不同的`Content-Type`值,服务器可以告诉客户端(如浏览器)如何...
当JSON数据包含数组时,可以遍历数组中的每个元素。假设我们有如下JSON字符串: ```json {"items": ["item1", "item2", "item3"]} ``` 可以这样处理: ```vbscript Dim jsonObj, itemsArr, item Set jsonObj...
如果需要发送JSON数据,我们可以使用StringEntity: ```java HttpPost httpPost = new HttpPost("http://example.com"); httpPost.setHeader("Accept", "application/json"); httpPost.setHeader("Content-type", ...
header('Content-Type:application/json;'); 或者。j s 添加 contentType: application/json; charset=utf-8, dataType: json, $.ajax({ url:'../data/insert_category.php?article_type=' + value, contentType:...
07. public Object save(final Object model); 08. public void update(final Object model); 09. public void delete(final Object model); 10.} [java] view plaincopy 01.package com.mvc.dao; 02...
经过尝试,只需要在$.ajax中加入 contentType: “application/json; charset=utf-8″选项就可以了,这是因为在.net 3.5以后要对contentType进行检查,所以仅仅指定dataType的话.net就不会返回JSON了,那么我们的请求...
### jqGrid 分页参数详解 #### 一、引言 在Web应用开发中,数据展示是必不可少的一个环节。为了提供更好的用户体验以及优化服务器资源利用,前端分页技术得到了广泛的应用。其中,`jqGrid`是一款非常受欢迎的jQuery...
请求头contentType设置为application/x-www-form-urlencoded;charset=utf-8。 后台接收请求的方法的参数可以用String类型 @RequestBody 是作用在形参列表上,用于将前台发送过来固定格式的数据【xml 格式或
- 如果需要发送 JSON 数据,可以使用 `StringEntity`,设置合适的 Content-Type,如 `ContentType.APPLICATION_JSON`,然后将其设置为请求实体。 5. **处理响应**: 在执行请求后,通常需要处理 `HttpResponse`。...
当使用jQuery的Ajax方法与后端进行数据交互时,通常会涉及到HTTP头的设置,如`contentType`(指定发送数据的格式)和`dataType`(期望服务器返回的数据类型)。在处理JSON数据时,这些设置至关重要,例如: ```...
contentType:"application/json;charset=utf-8", success:function(){$("#message").html("Employee Saved").fadeIn();}, error:function(){$("#message").html("Error Occurred").fadeIn();} }); return false...
SpringMVC_Coustom_json_... contentType:"application/json", dataType: "json", async : true, data: JSON.stringify(data1), success: function(data) { console.info(data) } });
这种编码格式是标准的编码格式,广泛应用于Web开发中,特别是在开发Restful Web service时尤其重要。 在HTML表单中,Enctype属性指定将数据回发到服务器时浏览器使用的编码类型。application/x-www-form-urlencoded...
在ajax中使用post方法,用常规的参数格式:param1=a1¶m2=a2 ,当参数长度过长时,依然提交不成功。比如我们经常这样写一个ajax的post请求: $.ajax({ type: "post", // post or get contentType:"application...