Overloading "finalize" will not work because the JVM is not forced to call
this method immediately when the class becomes eligible to garbage
collection (in fact it might not call it at all). So you might end up with
your clean up code not executed before the page is reinitialized, or even
not executed at all.
A valid workaround would be to store a reference to the active instance in a
static variable, and on reinitialization first check that instance and if
it's not null, clean it up. Of course this will break too if your class is
recompiled and reloaded... I'm not sure if the finalize method could not be
used in this case.

-----Original Message-----
From: Matthew Cordes [mailto:[EMAIL PROTECTED]]
Sent: Friday, June 01, 2001 10:01 AM
To: [EMAIL PROTECTED]
Subject: Re: init() and destroy() in XSP


There are work-arounds though:

INIT:
Make a global variable, set it to null, inside your <xsp:page> block check
to see if it is null and do init stuff, then set it to something else.

DESTROY:
wouldn't  overloading void finalize() { ... } work here?

-matt



----- Original Message -----
From: "Frans Thamura" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, May 31, 2001 11:38 PM
Subject: Re: init() and destroy() in XSP


> Ya, one of cocoon problem is no init and destroy
>
> ----- Original Message -----
> From: "Polley Christopher W" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Friday, May 04, 2001 9:16 PM
> Subject: init() and destroy() in XSP
>
>
> > Hello, all:
> >
> > I have an XSP page in which  I would like to do some setup (open JDBC
> > connection, create prepared statements) upon instantiation and cleanup
> > (close ps's and connection) upon destruction.
> >
> > In its previous life as a jsp page, it used jspInit() and jspDestroy(),
> and
> > in a servlet it could use init() and destroy().
> >
> > I found XSPPage.init(parameters), which I can override to do the
> > initialization, but I am unclear on the tail end of the xsp life cycle.
> How
> > & when is it destroyed (in Cocoon 1.8.1) ?  How is this type of thing
done
> > in XSP?
> >
> > I suppose that in this case, in which I am only doing JDBC stuff, I
could
> > try the sql taglib, but am unclear on how that would be done.  Can
> > <?cocoon-process type="sql"?> safely be placed ahead of <?cocoon-process
> > type="xsp"?>? What would the resultant xsp-servlet look like?
> >
> >
> > Thanks,
> > Chris
> >
> >
> > ---------------------------------------------------------------------
> > Please check that your question has not already been answered in the
> > FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>
> >
> > To unsubscribe, e-mail: <[EMAIL PROTECTED]>
> > For additional commands, e-mail: <[EMAIL PROTECTED]>
>
>
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
>
>
> ---------------------------------------------------------------------
> Please check that your question has not already been answered in the
> FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>
>
> To unsubscribe, e-mail: <[EMAIL PROTECTED]>
> For additional commands, e-mail: <[EMAIL PROTECTED]>
>


---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>

---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>

Reply via email to