2014-03-28 61 views
0

當我試圖提交(春季)形式的查詢:java.lang.IllegalStateException:無論BindingResult也可以作爲請求屬性平原目標對象

http://i.imgur.com/6BgiW7Q.png

我沒有得到消息。

控制器

@RequestMapping(value = "beerbean", method = RequestMethod.GET) 
public String showForm(@ModelAttribute("beerbean") BeerBean beerbean){ 
    return "addbeerform"; 
} 



@RequestMapping(value = "beerbean", method = RequestMethod.POST) 
public String newBeer(Model model, @Valid @ModelAttribute BeerBean beerbean, 
     BindingResult bindingResult){ 
    if(bindingResult.hasErrors()){ 
     return "addbeerform"; 
    } 
    model.addAttribute("beani", beerbean); 
    return "showBeer"; 
} 

addbeerform.jsp

<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%> 

<form:form commandName="beerbean" action="${pageContext.request.contextPath}/app 
    /beerbean" method="POST"> 

    <form:input path="name" /><form:errors path="name" /><br/> 
    <form:input path="id" /><form:errors path="id" /><br/> 

    <input type="submit"> 
</form:form> 

當沒有在字段中的錯誤它的工作原理,並進入 「showBeer」,但是當它只是崩潰。我也有實現Serializable等的BeerBean類,但不認爲解決方案在那裏(變量有形式寫入參數,輸入路徑=「名稱」轉到私有字符串名稱等)。

回答

0

我建議明確指定模型屬性的名稱:

public String newBeer(
    Model model, 
    @Valid @ModelAttribute("beerbean") BeerBean beerbean, 
    BindingResult bindingResult 
) { 
相關問題