Error marshalling data

使用dwr的时候,调用页面老是报Error marshalling data

原因:

访问:http://server/app/dwr找到对应的模块,手工输入数据测试对应的方法,发现方法是正常的。说明是在程序中,所传过去的参数有问题。经过排查,原来该Javabean中有一个属性是Date类型,而页面采用ext的方法获取参数值:var values = actionForm.form.getValues();直接将values值传给方法,而日期作为字符串传进去,结果无法转换而报错。

解决办法:

需要使用如下方法对该参数进行赋值values["balanceDate"] = actionForm.form.findField("balanceDate").getValue();。在使用Ext.encode(values)时,如果是日期类型在日期与时间之间有一个T,而字符串只有日期部分。

除了使用这个方法外,还有一个方法(更好,推荐):使用getFieldValues()获取数据,var values = actionForm.form.getFieldValues();

另外也可以这样new Date(birthday.toString().replace(/-/g,"/"))解决

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...