Craig - Thanks for the response. One last question - during the time period where the getServletContext().setAttribute() is executing in Servlet_1, is there any concern about collision with an access from Servlet_2 (Struts)? I guess I'm unsure whether the setAttribute() method is synchronized or not.... (the javadoc doesn't say.)
Thanks! Jerry Jalenak Development Manager, Web Publishing LabOne, Inc. 10101 Renner Blvd. Lenexa, KS 66219 (913) 577-1496 [EMAIL PROTECTED] > -----Original Message----- > From: Craig R. McClanahan [mailto:[EMAIL PROTECTED] > Sent: Wednesday, December 24, 2003 1:00 PM > To: Struts Users Mailing List > Subject: Re: [OT] Synchronized access to application-scoped object > > > Quoting Jerry Jalenak <[EMAIL PROTECTED]>: > > > Holiday Greetings to All! > > > > Quick design question - Is it possible to synchronize an > application-scoped > > object between two servlets within the same web > application? I have a > > servlet that I have written that maintains a List object > that is stored in > > application scope. This servlet basically creates a new > List, then replaces > > the existing one (uses the same name for the object). My > second servlet > > (Struts) simply accesses this List in a read-only fashion - > no updates. I > > can write a basic spin-lock type of mechanism to ensure > that my Actions do > > not try to access this List while my first servlet is > replacing the object, > > but I'm wondering if there is an easier approach, possibly using a > > synchronized block using the application object.... > > > > Comments? > > > > Synchronizing on the List instance won't help much, because > of the way you're > replacing the old one with a new one -- but it's probably > unnecessary as well, > since the servlet reading the old List and the servlet > creating the new List > are never manipulating the same object instance. > > If the servlet doing the modifying was doing it "in place" on > the existing List > instance, then synchronizing on that instance would indeed be > appropriate. > > > TIA! > > > > Jerry Jalenak > > Craig > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > This transmission (and any information attached to it) may be confidential and is intended solely for the use of the individual or entity to which it is addressed. If you are not the intended recipient or the person responsible for delivering the transmission to the intended recipient, be advised that you have received this transmission in error and that any use, dissemination, forwarding, printing, or copying of this information is strictly prohibited. If you have received this transmission in error, please immediately notify LabOne at the following email address: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]