2012-02-28 115 views
0

我有問題,@ModelAttributeSpring MVC的對象爲空

CustEntity有像「姓名」等對象也有稱爲bankAcc的BankAccEntity列表,它具有編號和名稱。

在GET方法當我使用getBankAcc()我CUST具有bankaccounts ArrayList中,但是當我從GET到POST通過對象「顧客」,他有[]中BankAcc列表;/

我的代碼片段是以下:

@RequestMapping(value = "/aaa.html", method = RequestMethod.GET) 
public String aaaGet(Model m, Principal principal) { 

... 
    CustEntity cust = custService.getCustByUserName(principal); 
    cust.getBankAcc(); 

    m.addAttribute("customer", cust); 

... 
} 


@RequestMapping(value = "/aaa.html", method = RequestMethod.POST) 
public String aaaPost(
     @ModelAttribute("customer") CustomerEntity cust, 
     BindingResult results, RedirectAttributes redirectAttributes, 
     Model m) { 

    cust.getBankAcc(); 

    ... 
} 

問候, swierzy

回答

1

在aaaPost,CustomerEntity卡斯特將與您的表單中的數據具有約束力。 也就是說,aaaPost中的cust不是您在aaaGet中放入模型中的那個。

0

我也堅持了這個問題,並得到了一個解決方案:

添加彈簧形式到您的網頁:

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

而且使用形式是這樣的:

<form:form action="/someUrl" modelAttribute="objectName" method="post"> 
    <form:input path="fieldName"/> 
    <button type="submit">buttonName</button> 
</form:form>