在我的一个Struts动作中,我在方法中得到了以下代码:
...
List<Object> retrievedListOfObjects = c.getListOfObjects();
return mapping.findForward("view");
}
fw_view
导致使用另一个Struts表单的新Struts操作。让我们说这个表格包括以下字段
List<Object> listOfObjects;
我现在想要将第一个Struts操作中的retrievedListOfObjects
传递给以下Struts操作的形式。
这可以不将它存储在会话中吗?
答案 0 :(得分:6)
您可以将其存储为请求属性。
request.setAttribute("listOfObjects", listOfObjects);
然后在转发到
的Action中List<Object> listOfObjects = (List<Object>)request.getAttribute("listOfObjects");
鉴于在设置请求属性时您可以为它们指定有意义的名称,您应该考虑设置许多属性,而不是设置一个大的对象列表。
答案 1 :(得分:1)
纠正krock代码。
将对象设置为请求:
request.setAttribute("listOfObjects", listOfObjects);
将对象用于其他操作。
List<Object> listOfObjects = (List<Object>)request.getAttribute("listOfObjects");