My understanding is that this event will be called when the container passivates for transfering one object from one VM to Another like a cluster. Will this be invlked on Tomcat 4.1 when an object is serialised ?.
rgds Antony Paul ----- Original Message ----- From: "Tim Funk" <[EMAIL PROTECTED]> To: "Tomcat Users List" <[EMAIL PROTECTED]> Sent: Wednesday, September 15, 2004 6:50 PM Subject: Re: Serializable Logging implementation > Your NPE comes from the transient value not being restored from de-serialization. > > Your best chance at this point without a lot of code changes is to > 1) Make your log variable transient > 2) Make your base class implement HttpSessionActivationListener. > 3) Make your implementation of sessionDidActivate(): > > public void sessionDidActivate(HttpSessionEvent se) { > if (log==null) > log = LogFactory.getLog(this.getClass()); > } > > public void sessionWillPassivate (HttpSessionEvent se) { > ; /* Nothing to do */ > } > > > -Tim > > Antony Paul wrote: > > > Then it throws NullPointerException > > > > rgds > > Antony Paul > > > > ----- Original Message ----- > > From: "Shapira, Yoav" <[EMAIL PROTECTED]> > > To: "Tomcat Users List" <[EMAIL PROTECTED]> > > Sent: Wednesday, September 15, 2004 6:05 PM > > Subject: RE: Serializable Logging implementation > > > > > > > > Hi, > > Hmm, you want to be careful with this pattern. I like the private > > static one for Loggers -- there are very good reasons it's the > > recommended pattern (by log4j, by the java.util.logging folks) and the > > one that's used (by Tomcat and most other serious apps I know of). > > > > If you really want to stick with your "base class gets the logger" > > pattern, consider marking it as transient. > > > > Yoav Shapira > > Millennium Research Informatics > > > > > > > >>-----Original Message----- > >>From: Antony Paul [mailto:[EMAIL PROTECTED] > >>Sent: Wednesday, September 15, 2004 8:27 AM > >>To: Tomcat Users List > >>Subject: Re: Serializable Logging implementation > >> > >>I extend a base form which gets the Log as > >>LogFactory.getLog(this.getClass()); > >>So that no need to define and get a Log instance in subclass. Is there > > > > any > > > >>way so that I can follow this pattern. > >> > >>rgds > >>Antony Paul > >> > >>----- Original Message ----- > >>From: "Tim Funk" <[EMAIL PROTECTED]> > >>To: "Tomcat Users List" <[EMAIL PROTECTED]> > >>Sent: Wednesday, September 15, 2004 4:38 PM > >>Subject: Re: Serializable Logging implementation > >> > >> > >> > >>>logging instances should be static to the class. > >>> > >>>// Commons logging example but a log4j equiv should be easy to find > >>> private static Log log = LogFactory.getLog(MyClass.class); > >>> > >>> > >>>-Tim > >>> > >>>Antony Paul wrote: > >>> > >>> > >>>>Hi, > >>>> I used Log4J and commons logging in an ActionForm which is > > > > stored > > > >>in > >>the > >> > >>>>session. When I reload the context it is invalidating the session > >> > >>because it > >> > >>>>is non serializable. Is there any work around for this ?. Or do I > > > > have > > > >>to > >> > >>>>use any other Logger. > >>>> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]