Shouldn't have a race condition on init. init should only be called one time before any client connection is allowed to be served for the servlet. Now, if a process is kicked off in another thread in init and proper locking isn't used and two things access resources or classes then a race condition might ensue, but otherwise I don't see the exact problem. Proper locking should always be used in code one writes or at least the APIs being used should be studied enough to know how a given use case will impact them. If caching is handled as needed and it is just a warm up prep of the cache then a single first connection will work fine. It depends on exactly what is going on.
Wade ----- Original Message ---- From: Pid <[EMAIL PROTECTED]> To: Tomcat Users List <users@tomcat.apache.org> Sent: Monday, November 5, 2007 12:08:25 PM Subject: Re: running! a servlet at tomcat startup Wade Chandler wrote: > Yes, and in the listener I would then utilize some kind of other web client to actually perform a first request. You can use something like HttpClient or one of the command line text browsers and Runtime.exec. It would probably be easier than trying to simulate with some other means, but I may be wrong..especially if you already know what you are doing will work without having to have the extra client connection, but it would seem a lot less code to just have a config file you fill in and a client which makes a simple http web request. I hope the populating of the cache is done programmatically, rather than by making connections, because AFAIK the Context won't start serving pages until it's finished starting up. You could have a race condition if you're using a listener or a servlet init() method, if your populating starts before the pages are available. p > ----- Original Message ---- > From: "Caldarale, Charles R" <[EMAIL PROTECTED]> > To: Tomcat Users List <users@tomcat.apache.org> > Sent: Monday, November 5, 2007 10:39:47 AM > Subject: RE: running! a servlet at tomcat startup > > >> From: loredana loredana [mailto:[EMAIL PROTECTED] >> Subject: Re: running! a servlet at tomcat startup >> >> In case ur wondering why I used a servlet to fill >> the cache is because I need some variables like >> request.getContenxtPath, getRealPath() etc. > > Wouldn't a ServletContextListener be more appropriate for this kind of > activity? See section 10 of the servlet spec for details. > > - Chuck > > > THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE > PROPRIETARY > MATERIAL and is thus for use only by the intended recipient. If you > received this in error, please contact the sender and delete the e-mail > and its attachments from all computers. > > --------------------------------------------------------------------- > To start a new topic, e-mail: users@tomcat.apache.org > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > --------------------------------------------------------------------- > To start a new topic, e-mail: users@tomcat.apache.org > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]