【发布时间】:2012-02-06 22:00:19
【问题描述】:
我在请求中有一个联系人对象,该对象在 形成,然后得到修改后的对象。我希望返回的对象与您发送的对象相同,您保留表单中没有的属性的值。
class Contact{
private String name; // this attributes will be modified
private String lastName;
private Long id;
private Date created; // this atributes will not be modified
// getters and setters ....
}
@RequestMapping(value = "/{id}/edit", method = RequestMethod.GET)
public String updateContact(@PathVariable("id") Long id, Model model) {
Contact c = contactDao.get(id);
model.addAttribute("contact", c);
return "contact/form";
}
@RequestMapping(value = "/{id}/edit", method = RequestMethod.POST)
public String update(@PathVariable("id") Long id, @Valid @ModelAttribute Contact contact, BindingResult result, Model model) {
// The contact I get here I want to keep the original attributes of the
// object sent, and have the changes in the fields shown on the form. is that possible?
return "redirect:/contact";
}
<form:form action="${pageContext.servletContext.contextPath}/tags/create" commandName="contact">
<form:input path="name"/>
<form:errors path="name" cssClass="formError"/>
<form:input path="lastName"/>
</form:form>
我不想使用隐藏字段来维护不会改变的属性的值
【问题讨论】:
标签: java spring data-binding