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*