Re: how to iterate through a map in struts
On Apr 10, 9:07 am, "chandan" <omchan...@gmail.com> wrote:
On Apr 10, 1:46 am, "Tim B" <nos...@someisp.ca> wrote:
"vyshu" <vysh...@gmail.com> wrote in message
news:1176100609.213901.233960@e65g2000hsc.googlegroups.com...
hi,
i am confused about iterating through a map in struts.
i hav a form bean LoginForm.and a getter mathod getID(),which returns
the values of a map if passed the key as parameter....my code..
/*public String getId(String key)
{
return (String)mapelements(key);
}
public Object mapelements(String key)
{
Map x=new HashMap();
x.put("1","vaisahk");
x.put("2","jovin");
x.put("3","praveen");
x.put("4","subhash");
return x.get(key);
}
*/
now i want to print this in the jsp page where i am fowarding from
here..
this is my action code..
LoginForm obj=(LoginForm)form;
sess=obj.getUser();
HttpSession session=req.getSession();
session.setAttribute("usersession",form);
and in the forwarded jsp page i want to print the values of the
map....
please help....
Here's an example using Struts tags.
<bean:define name="myRequestScopedBean" property="theMap" id="myMap"/>
<logic:iterate id="mapEntry" name="myMap" >
<bean:write name="mapEntry" property="key"/> <bean:write
name="mapEntry" property="value"/>
</logic:iterate>
Vyshu,
Just elaborating above example for better understanding.
<bean:define name="myRequestScopedBean" property="theMap" id="myMap"/>
1. myRequestScopedBean- is the bean class(DTO/VO's) in which you will
be decalaring your HashMap as property.
2. theMap- is the name of HashMap, like private HashMap theMap in the
bean class, which you will be populating in Action/impl classes.
3. myMap- is just a reference variable with which this HashMap will be
refered within this scope.
<logic:iterate id="mapEntry" name="myMap" >
Now as you have hashmap reference so you iterate over it, giving it a
id for next scope in which you loop/iterated within the entry and get
its keys and values printed out.
-Chandan- Hide quoted text -
- Show quoted text -
hi,
thanks,
ok,i will try to explain what i understood.
In my form bean itself i will declare the HashMap.
//*****************************************************
public class LoginForm extends ActionForm
{
private HashMap themap;
}
//**********************************
Now let me assign the entire form to a request scope in my Action
class.
ActionForm form;
LoginForm object=(LoginForm)form;
request.setAttribute("myRequestScopedBean",form);
//**********************************************
Now can you explain what and all getter methods i need for acessing
the values of the map, and also where to write it.
and I want to display the values of the map as the options of a select
tag!..
waiting for your reply.
thanks,
vysh.