日期:2014-05-18  浏览次数:20896 次

JSP中集合如何传递




请教一个问题
现在将一个集合list从一个Action类传到jsp页面,在jsp页面中表单提交时,再将这个集合list传到action类中,请问要如何做?



以下是我的方法,但是行不通,传递过程中,集合变成了String类型

第一个Action类
publicpublic class SendMsAction extends ActionSupport {
private static final Log logger = LogFactory.getLog(InviteAction.class);
/** 通过手动输入邮箱地址邀请好友参数 */

private List notregister;

@Override
public String execute() throws Exception {
.....无关内容没有写出
List lis=new ArrayList();
lis=Invite.getInvite();//这里已验证,有内容,lis.size()=2
.....无关内容没有写出
return SUCCESS;//成功返回后,跳转到invite.jsp
}

.........getter,setter等方法略


}



网页invite.jsp部分代码
<ww:form name="inviteAction" method="post">
<ww:textfield name="notregister"/> <!-- 已验证,这里notregister有内容,notregister!=null,但表单value值有点奇怪,内容是集合所有元素的toString结果的拼接 -->
.....其它内容略
</ww:form>






//页面提交后,转到该Action
public class InviteAction extends ActionSupport {
private static final Log logger = LogFactory.getLog(InviteAction.class);
/** 通过手动输入邮箱地址邀请好友参数 */

private List notregister;

@Override
public String execute() throws Exception {
if(notregister!=null){
for(int i=0;i<notregister.size();i++){
Sysout.out.println(notregister.get(i).toString());//明明传过来有两个非String对象,但传到这,对象变为一个String对象,
}
}
}

.........getter,setter等方法略


------解决方案--------------------
放到session里