各位:
    我在jsp 页面通过javascript 得到页面元素保存到数组中,比如table 某列列值。然后准备通过form表单提交方式传递到struts2后台,但是页面提示404错误,明显看出url 错误,请问,大家是怎么处理向struts2 传递数组这种事情的,代码如下:
//这是得到某个table中某列值,并保存到数组wheelCodes中
var wheelCodes = new Array();
for(var i=1;i<row.length;i++){
    wheelCodes[i-1]= myTable.rows[i].cells[2].innerHTML;
}form1.action = "/DaccAssist/wheel/dwrBatchSave!dwrBatchSave.action&wheelCodes="+wheelCodes;
form1.submit();这是在页面显示的url地址
http://localhost:8000/DaccAssist/wheel/dwrBatchSave!dwrBatchSave.action&wheelCodes=0911111006,0911111007可以肯定的是url 错误了,可是谁能告诉我通过什么方式处理传递数组参数呢?
我倒是考虑处理一下,将数组元素组织一下,形成0911111006,0911111007,...这样的字符串,然后在后台通过接受string 参数值,然后通过spilt 得到分别的值,但是我不知道是不是有更好的方式呢?
谢谢大家了,有知道的帮助提醒一下,怎么传递,后台怎么接受!!

解决方案 »

  1.   

    呵呵,url 中间的& 换成?号,不过还是不知道怎么将数组传递到struts2后台去
      

  2.   

    数组一般都是按你这样做,直接传数组参数是不可能的。但是你要考虑到url有长度限制。所以可以变通一下,在界面定义一hidden,把这个字符串放进去,界面form的method属性设置为post,采用post方式,就不会有长度限制了。
      

  3.   

    你直接把第二列name="";命名相同的名字.
    在Action 中定义一个与页面相同的参数.提供get,set.然后在相应的方法中get后分隔.
    String [] params=spilt(",");params就是你要的数组了!
      

  4.   

    1).Action内容:
       1/.private Map<String, User> users;
       2/.users属性有get/set方法。
    2).Jsp写法:
       Action属性名[key值].属性名。即users['0'].username注:在刷新画面时,必须通过用户Action启动画面,否则出错。