如何在Struts 2中提交多个模型?

时间:2008-09-25 16:40:43

标签: java jsp struts

我有一个JSP,允许用户动态创建其他表单字段来创建多个对象。也许我想让用户在提交发票表单时能够提交任意数量的订单项。

如何创建一个Struts 2 Action,它将能够接收一个ArrayList,其中填充了从这些动态生成的字段创建的对象。

2 个答案:

答案 0 :(得分:1)

您应该阅读Tabular input guide

答案 1 :(得分:1)

According to the (ever-poor) documentation,它迫使你试图推断你想要的信息,而不仅仅是权威地告诉你(假设你真的在询问Struts的内置类型转换),你需要表单字段被命名为......

someList.makeNew(0).someField1
someList.makeNew(0).someField2
...
someList.makeNew(1).someField1
someList.makeNew(1).someField1
...

...然后你需要set up an ActionClassName-conversion.properties file让类型转换器知道如何处理以“someList”开头的字段的类型转换。

我自己实际尝试过的唯一一次,我无法使用Lists并最终不得不使用地图。

这是一篇关于modifying a Map of objects using type conversion的有用博客文章 - 我没有太多运气找到有关文档提及的“makeNew”字段名称格式的有用信息,但这可能有助于您入门。