DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23373>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23373

Servlet destroy() methods not being called at shutdown





------- Additional Comments From [EMAIL PROTECTED]  2003-09-24 19:51 -------
Remy,
I won't reopen it because you said not to, but I've debugged this. How can I 
prove it to you? Look at procrun_destroy_jvm in procrun.c. It calls jni_attach 
which:
    err = (*jvm)->AttachCurrentThread(jvm,
                                      (void **)&env,
                                      NULL);
Stepping over line 423 in Catalina.java results in a callback to setServer and 
the Server object that stop gets called on is the same object.
Just the fact that I can hit a break point at main in Bootstrap.java when I 
try to stop the service proves it. Because I'm attached to the JVM that the 
service started.

I created the service with:
C:\Tomcat\Home\bin\tomcatw.exe //IS//TomcatDebugServer --DisplayName "Apache 
Tomcat Debug Server" --Description "Apache Tomcat 5.0.12 Server - 
http://jakarta.apache.org/tomcat/ - Debug Server"  --
Install "C:\Tomcat\Home\bin\tomcat.exe" --
ImagePath "C:\Tomcat\Home\bin\bootstrap.jar" --StartupClass 
org.apache.catalina.startup.Bootstrap;main;start --ShutdownClass 
org.apache.catalina.startup.Bootstrap;main;stop --Java 
C:\Tomcat\J2SDK\jre\bin\server\jvm.dll --JavaOptions -server#-Xdebug#-
Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=53006#-Xms512m#-
Xmx512m#-Xrs#-Dsp.log.suffix="_server1"#-
Djava.endorsed.dirs="C:\Tomcat\Home\bin;C:\Tomcat\Home\common\endorsed"#-
Dcatalina.base="C:\Tomcat\BaseServer1"#-Dcatalina.home="C:\Tomcat\Home"#-
Djava.io.tmpdir="C:\Tomcat\BaseServer1\temp" --Startup manual --StdOutputFile 
C:\Tomcat\BaseServer1\logs\stdout.log --StdErrorFile C:\Tomcat\BaseServer1
\logs\stderr.log --Arguments "-config C:\Tomcat\BaseServer1\conf\server.xml"

My problem is not that the JVM stops too early, it's that our webapp has some 
daemon threads that are running. They don't get interupted because destroy 
never gets called, therefore the service never stops.

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

Reply via email to