We have done alot of this and have tried many things.
In our case, If possible all of our static lists (provinces ect) are loaded at application startup and put into application scope. The plug-in's are great for this but there are many other ways. If the lists are User specific, they go into session. And as a last resort if they are required at request time, they are absolutely put in the LoadAction for that page. In the case of validation we route back to the LoadAction and not the page. The only problem is that this forces us to consider when to pre-populate the form fields from the backend or let them be prepopulate from the request(in the case of a bad validation). There is usally some type of a flag in the page that will let us know what state the page is in. In addition we found that putting the Collection directly into some scope with a well defined Constant.KEY_XXX was much better in the long run as opposed to trying to put in the form bean. This way the control on the page only needs to know the name of the collection but not where to get it. As well we now use LabelValueBeans for every list. just my 2 canadian cents. "Andrew Hill" <[EMAIL PROTECTED]> on 09/27/2002 10:04:00 AM Please respond to "Struts Users Mailing List" <[EMAIL PROTECTED]> To: "Struts Users Mailing List" <[EMAIL PROTECTED]> cc: Subject: RE: Please help decide a religious discussion Well if the Action is needed to populate the drop-downs (these values being in request scope I presume?) then after the form is submitted and validation has failed, you will need to reload these values. If you are loading the values in an action you will need to go through that action. (The other alternative is to store the info in session scope, but that creates the potential problem of knowing when to get rid of it) Perhaps the idea might be to have an action whose sole responsibility is to populate the drop-downs and instead of forwarding directly to the view, you go through this one first and it forwards you to the view after populating the drop-downs. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Friday, September 27, 2002 22:54 To: Struts Users Mailing List Cc: Struts Users Mailing List Subject: RE: Please help decide a religious discussion If I do that, will validation always go to the action class, even when it fails? Steve "Andrew Hill" <andrew.david.hill@gri To: "Struts Users Mailing List" <[EMAIL PROTECTED]> dnode.com> cc: Subject: RE: Please help decide a religious discussion 09/27/2002 09:50 AM Please respond to "Struts Users Mailing List" Sounds like you need to define the action and not the jsp as your input in struts-config. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Friday, September 27, 2002 22:40 To: Struts Users Mailing List Subject: Re: Please help decide a religious discussion That is what we are doing now. It goes through a controller to the database, but we are using the validator and when an error occurs, the form does not go to the Action class and the helper methods are not called and as a result, the drop downs are empty. Steve "David Graham" <dgraham1980@ho To: [EMAIL PROTECTED] tmail.com> cc: Subject: Re: Please help decide a religious discussion 09/27/2002 09:17 AM Please respond to "Struts Users Mailing List" The Action class...but the action should be asking a helper object for a list of whatever goes in your drop down. It shouldn't know about the database directly. So you might have in your action.execute(): List list = StateHelper.getStateList(); // put list in your form Dave >From: [EMAIL PROTECTED] >Reply-To: "Struts Users Mailing List" <[EMAIL PROTECTED]> >To: "Struts Users Mailing List" <[EMAIL PROTECTED]> >Subject: Please help decide a religious discussion >Date: Fri, 27 Sep 2002 09:13:35 -0500 > > >All, > >My team is currently at loggerheads about the correct place to put the >database calls that are prepopulating our drop downs. We can not decide if >they should be in the ActionForm or in the Action class. We are trying to >stick them in the validate method in the ActionForm to make sure they are >always called in instances where the form does not get to the action class >(i.e. validation fails). But is this the correct way? I am thinking this is >nothing new. What is the correct way to initialize drop downs? >And then what about closing the database connection? > >I would much appreciate any help. It would make our Friday alot smoother. > >Steve > > >-- >To unsubscribe, e-mail: ><mailto:[EMAIL PROTECTED]> >For additional commands, e-mail: ><mailto:[EMAIL PROTECTED]> _________________________________________________________________ Chat with friends online, try MSN Messenger: http://messenger.msn.com -- 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]> -- 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]>