wxk*_*vin 1 spring jsp spring-mvc
在搜索和搜索之后,我还没有找到解决方案.
使用Spring 3.1
我有一个表单,我希望用户能够添加多个联系人(poc).在我的JSP中,我有一个用于添加poc的提交按钮.它转到Spring Controller,从域对象获取当前的poc列表(首先是空的),将poc添加到列表中,然后在返回到同一视图之前将域对象放回模型中.然后,用户将最终提交整个页面,该页面将转到控制器并将整个对象保存为持久性.
我已经尝试了各种尝试,并且得出了不同的结果,因为只能添加一个新的poc覆盖现有的poc,而不能在表单上显示输入的poc.我会把我目前的代码.
JSP:
<form:form method="post" commandName="request">
...
<h2>POC:</h2>
<input type="text" name="newPoc"/>
<input type="submit" name="addPoc" value="Add POC"/>
<table>
...
<c:forEach items="${request.pointOfContacts}" var="poc" varStatus="vs">
<tr>
<td><form:label path="pointOfContacts[${vs.index}].name/></td>
.....
</c:forEach>
......
</table>
</form:form>
Run Code Online (Sandbox Code Playgroud)
弹簧控制器:
@RequestMapping(value="/request", method=RequestMethod.POST, param="addPoc")
public Sring addPoc(@RequestParam String newPoc, MyRequest req, Model model) {
PointOfContact poc = new PointOfContact();
poc.setName(newPoc);
List<PointOfContact> pocs = req.getPointOfContacts();
pocs.add(poc);
req.setPointOfContacts(pocs);
model.addAttribute("request", req);
return "requestForm";
}
Run Code Online (Sandbox Code Playgroud)
域对象
@Entity
public class MyRequest {
...
@OneToMany(Cascade=CascadeType.ALL)
private List<PointOfContact> pointOfContacts = new ArrayList<PointOfContact>();
.....
}
@Entity
public class PointOfContact {
...
private String name;
....
}
Run Code Online (Sandbox Code Playgroud)
有人有任何解决方案吗?我看过各种关于AutoPopulatingList的帖子,这是一个解决方案吗?如果是这样,我将如何在此示例中使用它.
| 归档时间: |
|
| 查看次数: |
7842 次 |
| 最近记录: |