【发布时间】:2017-04-06 20:33:18
【问题描述】:
我有一个带有迭代器列表的 JSP,它使用 getter/setter 迭代在操作中创建的对象。
我能够将映射值从动作拉到 JSP 迭代器,现在我希望能够将 JSP 迭代器列表传递回动作类以映射对象,但是我意识到它不会调用我的 setter 方法。
这是我的 JSP:
<s:iterator status="stat" value="parameterList" >
<tr id="<s:property value="#stat.index"/>">
<td><s:textfield id="parameterList[%{#stat.index}].queryParameter" name="parameterList[%{#stat.index}].queryParameter" cssClass="size30" labelposition="left" ></s:textfield> </td>
<td><s:textfield id="parameterList[%{#stat.index}].parameterValue" name="parameterList[%{#stat.index}].parameterValue" cssClass="size30" labelposition="left" ></s:textfield> </td>
</tr>
</s:iterator>
这是一个sn-p的动作:
private List<QueryParameter> parameterList = new ArrayList<QueryParameter>();
public void setParameterList(List<QueryParameter> parameterList) {
this.parameterList = parameterList;
}
public DQA getDqaObject() {
return dqa;
}
当我导航到 JSP 时,getter 会被很好地调用,但是当我从 JSP 提交时,我期望我放入文本字段迭代器的值应该调用并更新操作文件中的对象,但是 setter没有被调用。
【问题讨论】:
-
您缺少
getParameterList。 -
有个getParameterList,刚才忘了复制粘贴到这个问题里
-
作为术语,您没有传递“迭代器列表”,而是依靠值转换从您在请求中发回的参数重建列表。
-
@DaveNewton 是的,你是对的
标签: java jsp parameters struts2 ognl