iteye_3350 2009-01-04 14:05
浏览 233
已采纳

struts2 json插件 js中的集合如何被Action正确接收。

使用struts2 json插件 :

Action 中 :

[code="java"]
public void setOaAssetDeviceVos(List oaAssetDeviceVos) {
System.out.println("setOaAssetDeviceVos 执行 。。。。");
System.out.println("oaAssetDeviceVos == " + oaAssetDeviceVos);
System.out.println("oaAssetDeviceVos.getClass().getName() == " + oaAssetDeviceVos.getClass().getName());

     int len = oaAssetDeviceVos.size();
    System.out.println("len = " + len);

    for(int i=0;i<len;i++){
        System.out.println(i + " , type == " + oaAssetDeviceVos.get(i).getClass().getName());
        System.out.println(i + " , oaAssetDeviceVos.get(i) = " + oaAssetDeviceVos.get(i));
    }

    this.oaAssetDeviceVos = oaAssetDeviceVos;
}


public List<OaAssetDeviceVo> getOaAssetDeviceVos() {
    return oaAssetDeviceVos;
}

[/code]

这时候我在 客户端 接收到 :

[code="java"]
[{"card":"未填","title":"未填","type":"未填","xinghao":"未填","pinpai":"未填","timeBuy":"2009-01-04T13:12:07"},{"card":"未填","title":"未填","type":"未填","xinghao":"未填","pinpai":"未填","timeBuy":"2009-01-04T13:12:07"},{"card":"未填","title":"未填","type":"未填","xinghao":"未填","pinpai":"未填","timeBuy":"2009-01-04T13:12:07"}][/code]

现在我想 把 客户端的这种格式传回 Action 中 :

[code="java"]
store.load({params:{oaAssetDevices: [{"card":"未填","title":"未填","type":"未填","xinghao":"未填","pinpai":"未填","timeBuy":"2009-01-04T13:12:07"}],ids:this.ids}});
[/code]

结果 :

Action 中的 setOaAssetDeviceVos 方法被执行 ,但 后台报 :
[code="java"]
setOaAssetDeviceVos 执行 。。。。
oaAssetDeviceVos == [ognl.NoConversionPossible]
oaAssetDeviceVos.getClass().getName() == com.opensymphony.xwork2.util.XWorkList
len = 1
0 , type == java.lang.String
0 , oaAssetDeviceVos.get(i) = ognl.NoConversionPossible
___ Could not find action or result
No result defined for action module.oa.action.OaAssetActionJ and result input -
action - file:/D:/project/tianbao/oa/web/WEB-INF/classes/base/struts2.xml:31:82
at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(Defaul
ActionInvocation.java:350)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultAction
nvocation.java:253)
at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(
alidationInterceptor.java:150)
at org.apache.struts2.interceptor.validation.AnnotationValidationInterc
ptor.doIntercept(AnnotationValidationInterceptor.java:48)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercep
(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(Defaul
ActionInvocation.java:224)
at com.opensymphony.xwork2.DefaultActionInvocation$2.doProfiling(Defaul
ActionInvocation.java:223)
at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTi
erStack.java:455)
[/code]

问题集中在 js 中的 json 数据 怎么 转成 自定义的 后台 java对象。

哪位了解啊 ?

  • 写回答

2条回答 默认 最新

  • wentao365 2009-01-06 22:54
    关注

    action配的不对。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 写uniapp时遇到的问题
  • ¥15 matlab有限元法求解梁带有若干弹簧质量系统的固有频率
  • ¥15 找一个网络防御专家,外包的
  • ¥100 能不能让两张不同的图片md5值一样,(有尝)
  • ¥15 informer代码训练自己的数据集,改参数怎么改
  • ¥15 请看一下,学校实验要求,我需要具体代码
  • ¥50 pc微信3.6.0.18不能登陆 有偿解决问题
  • ¥20 MATLAB绘制两隐函数曲面的交线
  • ¥15 求TYPCE母转母转接头24PIN线路板图
  • ¥100 国外网络搭建,有偿交流