如何在Struts 2中使用s:a href和param标记传递整数列表?
示例POJO:
private List<Integer> myList = new ArrayList<Integer>();
public List<Integer> getMyList() {
return myList;
}
public void setMyList(List<Integer> myList) {
this.myList = myList;
}
示例JSP页面:
<s:url id="testUrl" action="testAction">
<s:param name="myList" value="%{myList}" />
</s:url>
<s:a href="%{testUrl}">Test Link</s:a>
当我点击“测试链接”时,表单会为myList提交以下内容:
[1,+ 2,+ 3,+ 4,+ 5]
这导致Struts重定向到“输入”页面。这不是理想的行为。有没有人对如何使用Struts标签正确传递整数列表有任何建议?
答案 0 :(得分:0)
如果我没记错的话,param标签会调用列表中的toString将参数放在URL中。因此,应该获取列表的操作只会获得一个字符串。
下一个动作的setter需要接受一个字符串,在这个setter中你可以拆分字符串,提取数字并用它填充一个新的列表。