Yes, and remember to make the getInstance() method static so you can call it 
before the class has been instantiated.  

On Fri, 24 Jan 2003 08:25:41 -0700 (MST), Wes Devauld wrote
> The approach you can take is to create your 'Manager' classes as singletons.
>  The idea is to make the constructors for the class private and then 
> use Manager.getInstance() like calls to get a hold of the object.  
> An example
> 
> class Manager {
> 
>   private Manager theOne;
> 
>   private Manager() {
> 
>     //Create your object
> 
>   }
> 
>   public Manager getInstance() {
> 
>      if(theOne == null) {
> 
>          theOne = new Manager();
> 
>      }
> 
>      return theOne;
> 
>   }
> 
> }
> 
> If you need to make sure the Manager object exits cleanly you will 
> need to implement a ContextListener (implement 
> javax.servlet.ServletContextListener) in Tomcat, and configure your 
> web.xml to use the Listener.  The listener recieves notification for 
> events like the server shutting down.  You can then have the 
> ContextListener call a Manager.shutdown() like call.
> 
> Hope this helps,
> 
> -W
> 
> >
> 
> > Hi,
> 
> > This is my first time designing and implementing a system on AXIS. I'm
> 
> > trying to design an application that will require the use of such
> 
> > resources as sockets, database connections, file I/O. If i'm not
> 
> > mistaken, whenever I invoke a method on an object that is running on
> 
> > top of the AXIS servlet, that object is instantiated and threaded. For
> 
> > example, I have, say a 'Server' object, that implements a logOn(),
> 
> > logOff(), createUser(), listUsers() methods. These methods all connect
> 
> > to a database and do some type of file logging. Since the 'Server'
> 
> > object will be threaded for each session, I foresee issues in
> 
> > resource conflicts/management and race conditions ('classical'
> 
> > issues regarding multi-threaded design) when multiple
> 
> > 'Server' threads have been spawned.  I had the idea of
> 
> > using 'static' 'Manager' classes (DBManager, SocketManager) to
> 
> > manage these pools of resources. Is there an approach to instantiate a
> 
> > single, static 'Manager' class (that will not destroyed until the AXIS
> 
> > servlet is shutdown) that these threaded objects can all commonly use
> 
> > to do this type of resource management? Regards,
> 
> > Nicolas Dinh
> 
> >  The new  MSN 8:  smart spam protection and 2 months FREE*




Reply via email to