我正在尝试使用Spring MVC迭代Velocity中的Map并从中创建一个FORM。这样可以正常工作,但我无法将值保存回地图。
这是模板:
<form method="POST" action="save">
#foreach($item in $data.data.entrySet())
$item.key
<input name="data.data['$item.key']" value="$data.data[$item.key]" />
<br />
#end
<input type="submit" value="submit">
</form>
并且支持bean看起来像这样:
@Controller
@RequestMapping("/")
public class HomeController {
@RequestMapping("/")
public String home(Model model) {
DataBean data = new DataBean();
data.addItem("name", "name123");
data.addItem("firstname", "firstname345");
model.addAttribute("data", data);
return "home";
}
@RequestMapping(value = "/save", method = RequestMethod.POST)
public String save(@Validated DataBean data) {
System.out.println(data.getData());
return "home";
}
}
显示表单看起来很好,但提交时地图始终为空。
有什么想法吗?谢谢!