[весна 3.0.5]
[jboss 5.1]
А есть два класса
public class User {
private String name;
private String surname;
private Address address;
...
sets and gets
setters and getters
}
public class Address {
private String street;
...
setters and getters
}
В контроллере у меня есть этот код:
@Controller
public class MyController {
@RequestMapping(value = "/index")
public ModelAndView showForm() {
ModelAndView mav = new ModelAndView();
mav.setViewName("index");
User user = new User();
Address adr = new Address();
mav.addObject("user", user);
mav.addObject("adr", adr);
}
А теперь я хочу создать из двух элементов ввода в JSP
<%@taglib uri="http://www.springframework.org/tags" prefix="spring"%> <%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<html><head><body>
<form:form method="POST" commandName="user">
<form:label path="name" />
<form:input path="name" />
<form:label path="adr.street" />
<form:input path="adr.street" />
</form:form>
</body>
</html>
Когда я запускаю, получаю исключение, подобное этому:
org.springframework.beans.NotReadablePropertyException: недопустимое свойство 'adr' класса бина [form.User]: свойство бина 'adr' недоступно для чтения или имеет недопустимый метод получения: соответствует ли возвращаемый тип получателя параметру тип сеттера?
org.springframework.beans.BeanWrapperImpl.getPropertyValue (BeanWrapperImpl.java:707)
org.springframework.be
Может кто-нибудь объяснить мне, почему и как улучшить код?