На мой взгляд, у меня есть простая форма, которая работает:
<form:form modelAttribute="user" >
<form:input path="lastName"/> <br/>
</form:form>
Я пытаюсь создать тег для создания моей формы следующим образом:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ attribute name="model" required="true" type="com.myObject"%>
<form:form modelAttribute="model" >
<form:input path="lastName"/> <br/>
</form:form>
называется так:
<%@ taglib prefix="ahead" tagdir="/WEB-INF/tags" %>
<ahead:form model="${user}"></ahead:form>
Но он выдает исключение: ни BindingResult, ни простой целевой объект для имени bean-компонента «модель» не доступны в качестве атрибута запроса.
Если в моем теге я напишу это:
<form:form modelAttribute="user" >
это работает, потому что я думаю, что он находит атрибут «пользователь» в модели
Но я хочу использовать атрибут "модель":
<%@ attribute name="model" required="true" type="com.myObject"%>
потому что он не всегда будет называться одним и тем же в модели.
Как я могу этого добиться?
Спасибо
<form:form>
не принимает имя атрибута запроса для атрибутовmodelAttribute
иcommandName
? - person Sotirios Delimanolis   schedule 07.01.2014model
предназначен для хранения имени используемого атрибута. - person Sotirios Delimanolis   schedule 07.01.2014