user321068
user321068

Reputation:

Passing a Java object from one Struts action to another

In one of my Struts action I've got the following code in a method:

  ...
  List<Object> retrievedListOfObjects = c.getListOfObjects();
  return mapping.findForward("view");
}

fw_view leads to a new Struts action with another Struts form. Let's say this form has got among others the following field

List<Object> listOfObjects;

I now want to pass the retrievedListOfObjects from within the first Struts action to the form of the following Struts action.

Is this possible without storing it in the session?

Upvotes: 2

Views: 5121

Answers (2)

krock
krock

Reputation: 29619

you can store it as a request attribute.

request.setAttribute("listOfObjects", listOfObjects);

and then in the Action that is forwarded to

List<Object> listOfObjects = (List<Object>)request.getAttribute("listOfObjects");

Given that when setting request attributes you can give them meaningful names, you should consider setting many attributes rather than setting one big list of objects.

Upvotes: 6

Fred
Fred

Reputation: 5006

Correction of krock code.

Setting object to request:

request.setAttribute("listOfObjects", listOfObjects);

Getting the object in an other action.

List<Object> listOfObjects = (List<Object>)request.getAttribute("listOfObjects");

Upvotes: 1

Related Questions