エラーの原因となる私の JSP コード スニペットを次に示します。
<form:select path="bankDetails[0].applicantType">
<form:option value="Applicant">Applicant</form:option>
<form:option value="Co-Applicant 1">Co-Applicant 1</form:option>
<form:option value="Co-Applicant 2">Co-Applicant 2</form:option>
<form:option value="Co-Applicant 3">Co-Applicant 3</form:option>
<form:option value="Guarantor 1">Guarantor 1</form:option>
<form:option value="Guarantor 2">Guarantor 2</form:option>
<form:option value="Guarantor 3">Guarantor 3</form:option>
</form:select>
これが私のコントローラーコードです
@RequestMapping(value = "enterBankDetails.htm", method = RequestMethod.GET)
public ModelAndView enterBankDetails() {
functionName = "enterBankDetails";
logger.info("In "+className+" - "+functionName+" ");
BankDetails details = new BankDetails();
ArrayList<EntityBankDetail> entitityBankDetails = new ArrayList<EntityBankDetail>();
for(int i = 0 ; i < 4 ;i++){
EntityBankDetail entityBankDetail = new EntityBankDetail();
entitityBankDetails.add(entityBankDetail);
}
details.setBankDetails(entitityBankDetails);
return new ModelAndView("bankDetails/bankDetails", "command",details);
}
ここにビーンコードがあります
public class BankDetails {
private ArrayList<EntityBankDetail> bankDetails;
private String[] entities;
private int noOfBankDetails;
private String test;
//getter and setter methods
}
public class EntityBankDetail {
private String nameOfBank;
private String EMIforProposedLoan;
private String nameOfBranch;
private String city;
private String accountType;
private String accountNumber;
private String applicantType;
//getter and setter methods
}
次のエラーが表示されます
java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name 'bankDetails[0]' available as request attribute
at org.springframework.web.servlet.support.BindStatus.<init>(BindStatus.java:141)
助けてください。私は何が間違っているのか分かりませんか?
編集:テストにバインドすると同じことが起こります
<form:select path="test">
<form:option value="Applicant">Applicant</form:option>
<form:option value="Co-Applicant 1">Co-Applicant 1</form:option>
<form:option value="Co-Applicant 2">Co-Applicant 2</form:option>
<form:option value="Co-Applicant 3">Co-Applicant 3</form:option>
<form:option value="Guarantor 1">Guarantor 1</form:option>
<form:option value="Guarantor 2">Guarantor 2</form:option>
<form:option value="Guarantor 3">Guarantor 3</form:option>
</form:select>
Neither BindingResult nor plain target object for bean name 'test' available as request attribute