在我看来,我有一个像这样的简单表格,它可以工作:
<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>
但它抛出了一个异常:bean name 'model' 的 BindingResult 和普通目标对象都不能用作请求属性
如果在我的标签中我写这个:
<form:form modelAttribute="user" >
它之所以有效,是因为我猜它在模型中找到了属性“用户”
但我想使用属性“模型”:
<%@ attribute name="model" required="true" type="com.myObject"%>
因为它在模型中并不总是被称为相同的。
我怎样才能做到这一点?
谢谢