我們正在使用struts 2.0.14並面臨問題,從JSP向動作類設置了索引屬性。設置從JSP到動作類的索引屬性的問題
代碼看起來與此類似。
public class MyExample extends ActionSupport
{
private List<Person> persons;
private List<String> names;
public String execute()
{
//persons = myDAO.readPersons(names);
return SUCCESS;
}
public String update()
{
for (Person p : persons)
{
System.out.println(p.getName() + "---" + p.getAddress().getStreet());
}
return SUCCESS;
}
// Getters and setters
}
class Person
{
private Address address;
private String name;
// Getters and setters
}
class Address
{
private String street;
private String number;
// Getters and setters
}
And JSP:
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ page language="java" pageEncoding="ISO-8859-1"%>
<!---- Other code ---->
<s:ieterate value="persons" status="status">
<tr>
<s:textfield name="person['%{#status.index}'].name"/>
<s:textfield name="person['%{#status.index}'].address.number"/>
<s:textfield name="person['%{#status.index}'].street"/>
</tr>
我可以成功地在頁面上顯示值,但是當我提交表單時,值沒有被填充。 我檢查了螢火蟲,看看這些參數是如何發佈的,它們就像人['0']。name,person ['0']。address.number等等,請讓我知道錯誤在哪裏。