我有一个包含多个项目对象的jsp页面。并对Shop_shopCart.action采取行动 在内部动作类中,有多个项目对象的购物车对象。如何直接从jsp映射到具有多个列表对象的action类。 演示课程如下。
<s:form action="Shop_shopCart.action">
// multiple items in cart object
</form>
class ShoppingAction extends ActionSupport{
Cart cart = new Cart();
//getters and setters
//action methods
String shopCart( ) {
// do some
}
}
class Cart{
List<Item> items = new ArrayList<Item>();
//getters and setters
}
class Item{
String name;
int id;
//getters and setters
}
答案 0 :(得分:1)
请参阅type conversion collection and map support docs。
Nutshell:数组或地图表示法(其中包含索引或键值的方括号)是在表单中提交对象集合的最简单方法。
答案 1 :(得分:-1)
这个例子应该有帮助
<s:form action="saveaction" theme="css_xhtml">
<s:textfield name="carlist[0].cartid" label="Cart Id"/>
<s:textfield name="carlist[0].items[0].id" label="Item id"/>
<s:textfield name="carlist[0].items[0].name" label="Item Name"/>
<s:textfield name="carlist[1].cartid" label="Cart Id"/>
<s:textfield name="carlist[1].items[0].id" label="Item id"/>
<s:textfield name="carlist[1].items[0].name" label="Item Name"/>
<s:submit value="Click me to submit Cart List"/>
</s:form>