将多个对象映射到struts2中的action类

时间:2012-01-12 17:52:22

标签: struts2

我有一个包含多个项目对象的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
}

2 个答案:

答案 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>