【发布时间】:2014-07-01 09:29:52
【问题描述】:
我从几天以来一直在与这个错误作斗争。我尝试了我在互联网上找到的所有方法,但似乎只有我有这个问题。
我有这样的 java 类:
Class ListItem{
private int id;
}
Class ListContainer{
private List<ListItem> items;
}
还有一个这样的jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java"%>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
...
<form:form method="post" action="myController" modelAttribute="listContainerModel">
<c:forEach items="${listContainerModel.items}" var="currentItem" varStatus="i">
<form:input type="text" path="items[${i.index}].id" name="id"/>
</c:forEach>
</form:form>
但我有这个例外
org.springframework.beans.InvalidPropertyException: Invalid property 'items[${i.index}]' of bean class [foo.bar.ListContainer]:
Invalid index in property path 'items[${i.index}]'; nested exception is java.lang.NumberFormatException: For input string: "${i.index}"
我尝试了很多东西,例如
How to send list of Objects to View and back to Post method in controller 控制器中的后置方法
或http://viralpatel.net/blogs/spring-mvc-multi-row-submit-java-list/
我想我在混合 jstl 标签 + el 表达式 + spring mvc 标签库时遇到了问题,但我不知道为什么。
【问题讨论】:
-
参数名为
varStatus,而不是Status -
是的,你是对的!我已经在我的帖子中解决了这个问题。顺便说一句,这不是问题。
-
也请在
varStatus下面的行中修正你的path,如果你想帮助你,你需要正确地发布你的问题 -
没人知道这件事吗?
标签: spring model-view-controller foreach jstl