我是Struts2的新手。我有一个JSP页面,显示了一个Rooms列表(Room是一个用户定义的类)。我需要将整个列表作为隐藏字段发送到操作类。 JSP代码如下:
<form method="GET" action="reporting.action" >
<s:hidden name="roomsReport" value="%{allRooms}"/>
<s:textfield name="roomsR" value="%{allRooms}"/>
<s:submit name="action" style="width:220px;" value="Generate Report for Rooms" />
</form>
textfield(用于测试)显示列表的地址(暗示它在jsp页面中不为null) 我仍然无法使用以下代码在我的ReportingAction类中访问它:
System.out.println("xxx"+this.roomsReport.size());
System.out.println(this.roomsReport);
以上两个印刷语句分别给出0和[]。我为roomsReport提供了getter和setter,如下所示:
private List<Room> roomsReport;
public List<Room> getRoomsReport() {
return roomsReport;
}
public void setRoomsReport(List<Room> roomsReport) {
this.roomsReport = roomsReport;
}
有人可以帮忙吗?
答案 0 :(得分:0)
最后,我可以使用session
将列表传递给jsp列表在jsp中的会话变量中设置如下:
<s:set name="roomsReport" value="%{allRooms}" scope="session" />
在动作类中,我可以使用以下代码访问它:
List<Room> roomsReport = (List<Room>)ActionContext.getContext().getSession().get("roomsReport");