【问题标题】:spring-mvc binding arraylist in form表单中的spring-mvc绑定arraylist
【发布时间】:2010-05-05 07:20:42
【问题描述】:

在我的控制器中,我向我的模型添加了一个 ArrayList,其属性名称为“users”。

现在我环顾四周,这是我找到的方法(包括这里的一个问题):

<form:form action="../user/edit" method="post" modelAttribute="users">
            <table>
                <c:forEach var="user" items="${users}" varStatus="counter">
                    <tr>
                        <td>
                                <form:input path="users[${counter.index}].age"/>
                        </td>
                        <td><button type="submit" name="updateId" id="Update" value="${user.id}">Update</button></td>
                    </tr>
                </c:forEach>
            </table>
        </form:form>

但是当我加载 JSP 页面时,我得到:

.springframework.beans.NotReadablePropertyException: bean 的无效属性“项目 [0]” 类 [java.util.ArrayList]:Bean 属性“用户 [0]”不可读或 有一个无效的 getter 方法: getter 的返回类型匹配 setter 的参数类型?

所以显然这不是要走的路,但在这种情况下,我如何绑定数组列表以便编辑值?

【问题讨论】:

  • 能把发送数据的控制器方法的代码加一下吗?

标签: jsp spring-mvc


【解决方案1】:

试试下面的代码:

<c:forEach var="user" items="${users}">
    <tr>
            <td><c:out value="${users.age}"/></td>
    </tr>
</c:forEach>

并确保您在请求范围内有 users arraylist。或者使用添加以下代码:

<jsp:useBean id="users" scope="request" type="java.util.Collection" />

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-11
    • 1970-01-01
    相关资源
    最近更新 更多