Вот мой JSP фрагмент кода, который вызывает ошибкуНи BindingResult, ни обычный целевой объект для имени боб 'bankDetails [0] доступна как запрос об ошибке атрибута в Spring MVC
<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)
Пожалуйста, помогите. Я не могу понять, что я делаю неправильно?
EDIT: То же самое происходит, когда я привязать его испытать
<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
Мне не нужно распечатывать значения. Мне нужно связать свойства каждого объекта EntityBankDetail для формирования. –
Я знаю, но вы получаете доступ к bankDetails как массив; а не ArrayList. – blackpanther
Я всегда могу получить к нему доступ таким образом, у меня есть рабочий код, который иллюстрирует это. Также проверьте мои изменения. –