You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by "PADALA, SANDHYA (SBCSI)" <sp...@sbc.com> on 2004/06/09 18:04:45 UTC
Hoe to store objects in request scope
Hi All,
I have a question on how to save the objects into request scope.
In my Form class I have an array of objects of type Product.
My Product class has productId and productName as the variables with
getter setter methods.
On my JSP I use logic-iterate tag to iterate through the array and use
html:link tag to display URL with productname as the display name and
procuct Id as the URL query string to the link.
Now on my JSP , if there is a validation error, This part of code is
throwing error saying could not find the collection list , since these
objects are not stored in the request and not in the Form object.
How do I get around this problem.
I cannot use hidden fields to store the product objects since they are
not string objects.
On my JSP
<logic:iterate id="products" name="TaskForm" scope="request"
type="com.foo.Product" property="productList"
indexId="idx">
<bean:define id="productID" name="products" property="productID" />
<%java.util.HashMap param = new java.util.HashMap();
param.put("productID", productID);
pageContext.setAttribute("parameter", param);
%>
<html:link name="parameter" scope="page" page="/product.do"><FONT
COLOR="#000000">
<bean:write name="products" property="productName" filter="true" />
</html:link>
</logic:iterate>
My Form class
public class TaskForm extends WorkFlowForm {
public Product[] productList;
public Product[] getProductList() {
return productList;
}
public void setProductList(Product product) {
this.productList[index] = product;
}
}
My Product class
public class Product {
/** @modelguid {CB0A7F3C-BEF2-46FB-8217-785C38D51CFD} */
public String productID;
/** @modelguid {B1408FF2-A899-4D46-A785-3B34DDE5D3C9} */
public String productName;
/**
* Returns the attID.
* @return String
*/
public String getProductID() {
return productID;
}
/**
* Returns the attName.
* @return String
*/
public String getProductName() {
return productName;
}
/**
* Sets the attID.
* @param attID The attID to set
*/
public void setProductID(String productID) {
this.productID = productID;
}
/**
* Sets the attName.
* @param attName The attName to set
*/
public void setProductName(String productName) {
this.productName = productName;
}
}
Can someone help me with this.
Thanks a lot for your help in advance.
Sandhya
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org