Are you confused that you see one thing and display another (which I get a lot from my students?).
There are 2 things going on, a client/browser side join not a db/server side join.
Example, you have a formBean with dept "101" a numeric field. You unit test this and CRUD. This is your Form Bean!!
Once you get that, then:
Now you want to display "Marketing" as a drop down instead of 101. So 101-Marketing, 102-Sales, etc. You care a collection, yet another thing you put in scope.
The client side, using select and optionCollection tag displays current dept., and a choice of other depts.
So a user sees "Marketing" drop down, which comes from the name part of collection. But the current value is in the formbean.
.V
Mark wrote:
Okay... But a drop down menu is screen data. And a list of companies is something that will be used more than once.So I have a normal class in my model layer ListCompanies In my UserAction (ListCompanies).getCompanies(); But this Action's primary job is to return a list of users (which it does). As the list is screen data i should be defining this in my form bean? This is something thats being confusing me for weeks. If i've a bunch of collections how can i make them available to iterate tags and select menus, without using useBean (sorry silly design constraint, but beyond my control). Hopefully I'm just being silly, i could really do with some pointers as where i'm missing the point. Cheers mark On 13-12-2002 11:49, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote:Also i dont understand why u need to access the request directly.I mean why
are u setting all the collections as request attributes.GEnerally I think the good
design is when u r FormBEan represents the screen data.So in this case
whatever u need on screen will become attribute of form.
I know it does not make much difference in implemantation but as a design it
becomes pretty straight forward.I mean for an action , if u just look at the
form, u know what is being displayed.So u just populate the form in action.
Any comments... :-))
-----Original Message-----
From: VEDRE [mailto:[EMAIL PROTECTED]]
Sent: Friday, December 13, 2002 11:44 AM
To: struts-user
Cc: VEDRE
Subject: RE: OptionsCollection
You can either use attribute collection="users" for options tag if you store
in request
or you can use name="formName" property="myList" if you have
a getMyList() method for the form(You have to fill call formName.setMyList()
in your action class before forwarding to a jsp).
checkout http://jakarta.apache.org/struts/userGuide/struts-html.html#options
if you have not looked at the documentation.
-rana.
-----Original Message-----
From: Mark [mailto:[EMAIL PROTECTED]]
Sent: Friday, December 13, 2002 5:36 AM
To: Struts Users Mailing List
Subject: OptionsCollection
Hello
I've a number of collections already defined that end up being passed to my
jsp's via the request object.
Users in this case is a map defined in my business logic class that does db
queries.
users = (ListUsers).getUsers();
request.setAttribute("users",users);
I itertate through this collection using iterate. But now i want to use this
in a select menu.
Should I be thinking about making my collection available to my FormBean i.e
making a getMyList() method.
Thanks in advance
mark
--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>