1

我有一个 spring mvc 表单

<form:form action="${actionUrl}" method="post" commandName="userAccountVO">
<form:input type="text" path="userName" value="${user.userName}"></input>
//other similar fields
<input type="submit" id="save_changes_button" value="" />
</form:form>

在返回视图的控制器中,我有这个代码

 model.addAttribute(user, userAccountVO);
 model.addAttribute("userAccountVO", new UserAccountVO());
 return "view";

但是我得到上面提到的错误如果我在输入标签中输入一些值是这样的

 <form:input type="text" path="userName" value="${user.userName}">some text</input>

另外,如果我尝试提交表单,模型属性对象中的所有字段都为空。

  @RequestMapping(value = "/updateuser", method = RequestMethod.POST)
public @ResponseBody
GenericResponse updateUserAccount(
        @ModelAttribute("userAccountVO") UserAccountVO userAccountVO,
        BindingResult result) {
 //userAccountVO here is null, i guess it creates a new object
}

这篇文章说这是因为我没有表单支持对象,但我有。

可能是什么问题呢?提前致谢。

4

4 回答 4

2

明显的建议。代替

<form:input type="text" path="userName" value="${user.userName}"></input>

经过

<form:input path="userName"/>
于 2013-05-29T18:43:57.387 回答
1

form 的commandName属性会自动将值绑定到 spring 表单中的 modal 对象上,通过path你会得到 modal 对象对应属性的值。

于 2013-05-30T06:23:05.007 回答
0

您的格式错误,您应该将其更改为:

<form:input type="text" path="userName" value="${user.userName}"/>
于 2020-04-24T01:50:46.987 回答
-1

您不应在标签之间添加任何空格、字符或换行符,否则它不会给出此警告消息。

于 2016-05-17T10:41:25.150 回答