我正在使用 Spring 表单从客户端获取输入(如果我使用普通的 html 输入)。如果我使用 Spring 表单输入,则会出现错误:java.lang.IllegalStateException: Bean name 'enumLanguage' 的 BindingResult 和普通目标对象都不能用作请求属性
这是我的 JSP:
<form:form commandname="enumLanguage" action="${pageContext.request.contextPath}/enumLanguage/create.action" method="post" modelAttribute="enumLanguage" >
<fieldset class="langStep">
<legend>Language Details</legend>
<table class="langpadding">
<tr>
<td><label>Name:</label></td>
<td><form:input path="name" cssClass="textbox2"></form:input></td>
<td><label class="llangpadding">Short Name:</label></td>
<td><form:input path="shortName" cssClass="textbox2"></form:input></td>
</tr>
</table>
<a href="Javascript:enumLanguage.submit()" class="button left" title="Add" id="add">Save<span class="icon icon3"></span></a>
</form:form>
这是我的控制器:
@RequestMapping( value="/enumLanguage/create.action", method=RequestMethod.POST)
public ModelAndView create(@ModelAttribute EnumLanguage enumLanguage) throws Exception {
ModelAndView mvc = null;
try{
List<EnumLanguage> enumLanguages = new ArrayList<EnumLanguage>();
enumLanguages.add(enumLanguage);
List<EnumLanguage> enumLanguagesList = enumLanguageService.create(enumLanguages);
mvc = new ModelAndView("setup/EnumLanguageList");
} catch (Exception e) {
}
return mvc;
}