struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From gdesc...@cmhc-schl.gc.ca
Subject RE: Request bean is lost
Date Tue, 06 Jul 2004 20:32:21 GMT
Exactly.

My Page.do has as a parameter the jsp page along with its Form Bean.
So it will get overwritten.

Now what is the best clearest way to get this done?
Must I absolutely use a Session Bean to maintain the List and the Form 
Bean for the user inputted data?





"Jim Barrows" <jbarrows@sssc.com>
06/07/2004 04:28 PM
Please respond to "Struts Users Mailing List"




 
        To:     "Struts Users Mailing List" <user@struts.apache.org>
        cc: 

        Subject:        RE: Request bean is lost
 Classification: 




> -----Original Message-----
> From: gdeschen@cmhc-schl.gc.ca [mailto:gdeschen@cmhc-schl.gc.ca]
> Sent: Tuesday, July 06, 2004 1:23 PM
> To: Struts Users Mailing List
> Subject: RE: Request bean is lost
> 
> 
> Umh...
> Let me try to express myself more clearly!
> 
> Page.do
> -------------
> My Page.do obtains 3 lists from the DB based on the user's security 
> attributes.
> Default values are set for 2 of the lists such as month and year.
> All of this is done in the Form Bean.
> 
> 
> PageSubmit.do
> -----------------------
> The user selects a diffierent month other than the default 
> and submits the 
> request to PageSubmit.do
> 
> The input for the PageSubmit.do mapping is /Page.do
> So this means that all of the Page.do logic is done again?
> Won't this overwrite what the user has entered?

It shouldn't... unless you are overwriting those fields in page.do 
explicitly.
Basically what's happening is right after the user hits submit, struts 
creates a form bean ( or uses an existing one), fills it from the form, 
then validates it.  At that point, if there is a problem it forwards to 
the input param, without changing the form bean.  In the case of the 
action, it doesn't even know when or where the form bean was created.  It 
just does it's thing quite merrily, then hands of to your code.


> 
> 
> 
> 
> 
> 
> "Jim Barrows" <jbarrows@sssc.com>
> 06/07/2004 04:16 PM
> Please respond to "Struts Users Mailing List"
> 
> 
> 
> 
> 
>         To:     "Struts Users Mailing List" <user@struts.apache.org>
>         cc: 
> 
>         Subject:        RE: Request bean is lost
>  Classification: 
> 
> 
> 
> 
> > -----Original Message-----
> > From: gdeschen@cmhc-schl.gc.ca [mailto:gdeschen@cmhc-schl.gc.ca]
> > Sent: Tuesday, July 06, 2004 1:04 PM
> > To: Struts Users Mailing List
> > Subject: RE: Request bean is lost
> > 
> > 
> > My lists are specific to each user based on security 
> > attributes obtained 
> > from the database.
> > Therefore, the application scope solution is not acceptable 
> for these 
> > lists.
> > 
> > If I go the first solution route, then I have my 3 Lists as 
> > part of the 
> > Form bean.
> > The user selects from the list and submits the data.
> > If I set the imput to /Page.do wouldn't I lose the user's input?
> 
> No, the input param in struts-config.xml is expressly used 
> for the case 
> where validation fails.  So you 
> won't lose anything.
> 
> > 
> > - Glenn
> > 
> > 
> > 
> > 
> > 
> > "Robert Taylor" <rtaylor@mulework.com>
> > 06/07/2004 02:39 PM
> > Please respond to "Struts Users Mailing List"
> > 
> > 
> > 
> > 
> > 
> >         To:     "Struts Users Mailing List" <user@struts.apache.org>
> >         cc: 
> > 
> >         Subject:        RE: Request bean is lost
> >  Classification: 
> > 
> > 
> > One solution is to point the input attribute value of the 
> > PageSubmit.do 
> > action mapping
> > to the Page.do action mapping thus re-retrieving the lists before 
> > displaying the page.
> > 
> > An alternative solution is to override the reset() of your 
> > action form so 
> > that it
> > retrieves the lists from the database and places them in the 
> > appropriate 
> > scope.
> > 
> > If the lists are composed of static data, you might consider 
> > retrieving 
> > them on 
> > application start up and placing them in application scope 
> > (ServletContext) where
> > they will be available to all requests and then there would 
> > be no need to 
> > retrieve
> > them each time the page is displayed.
> > 
> > robert
> > 
> > > -----Original Message-----
> > > From: gdeschen@cmhc-schl.gc.ca [mailto:gdeschen@cmhc-schl.gc.ca]
> > > Sent: Tuesday, July 06, 2004 1:39 PM
> > > To: user@struts.apache.org
> > > Subject: Request bean is lost
> > > 
> > > 
> > > Greetings,
> > > 
> > > I have an action Page.do that gets 3 lists from a database.
> > > It then places the lists inside a bean which is set in 
> the request.
> > > The Page.jsp iterates thru the bean to display the data.
> > > 
> > > The form is posted to the PageSubmit.do.
> > > But before the PageForm.validate() is executed.
> > > Assume that an error is found...
> > > The response is returned 
> > > 
> > > And this is where my bean is lost.
> > > Why?
> > > 
> > > I do not want to store thr bean in the HTTP Session.
> > > 
> > > TIA,
> > > Glenn.
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> > For additional commands, e-mail: user-help@struts.apache.org
> > 
> > 
> > 
> > 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
> 
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org




Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message