top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

Tomcat classes from previous run remains

+1 vote

I am running an j2ee application which uses spring, hibernate, jsf, etc. The application also uses ha-jdbc to make the databases highly available. When the application is deployed for the first time, the app runs smoothly, but when it is un-deployed and deployed back, tomcat gives the following error:

The following web applications were stopped (reloaded, undeployed), but their classes from previous runs are still loaded in memory, thus causing a memory leak (use a profiler to confirm):

I am wondering how to get rid of this problem. One Solution is restarting the server. Please let me know the solution with out restarting the server if any.

posted Sep 19, 2013 by Mandeep Sehgal

Share this question
Facebook Share Button Twitter Share Button LinkedIn Share Button

1 Answer

+1 vote

I'd suggest you start by reading this. It's a good introduction to the problem.

Then get a Profiler and follow the steps on slide #11. Once you figure out what is holding a reference to your application, you can determine where you go from there to fix it. Sometimes it something you need to fix in your code, sometimes it's something in a third party library that needs fixed.

Further detail can be found on the FAQ here.

answer Sep 19, 2013 by Bob Wise
Similar Questions
+1 vote

How do I start and stop just the tomcat admin application from a command line?

I had someone try to guess the password to my Tomee-Plume server last night. Thankfully I changed the default password and the hacker only tried twice. I want to be able to keep the admin application closed most of the time. On the rare occasion that I need access to the tomcat admin console I would like to start it up only for a brief period of time and then stop it.

Internet searches showed me how to stop other applications using the tomcat admin application. I want to stop just the Tomcat admin application not the whole server.

0 votes

I am just trying upgrade tomcat 7 to latest GA 8 for my application, I am seeing quite lots of change in web dav functionality.

The org.apache.naming.resources.ProxyDirContext do not exists do anybody know where I can find the alternative? in the past we got use resource to lookup something but now is not this one, can anybody know any doc?

+3 votes

Is there a specific reason to remove public void setUniqueId(String id); method from in Tomcat 8.0.20?

+1 vote

We have a set up like Apahce (80,443) redirects the request to Tomcat (8080) using mod_jk.

The new requirement is to route the request from the same apache to another tomcat (8090). Hence I made the different config file for apache with different ports (86,4444) and different worker for mod_jk which routes the request to tomcat.

Now the issue is when I hit the url http://:86 and after providing the credentials, it is redirecting to https://:86 and throwing the below error.

Error in browser:

Secure Connection Failed

An error occurred during a connection to x.x.x.x:86. SSL received a record that exceeded the maximum permissible length. (Error code: ssl_error_rx_record_too_long)

Error in logs:

"x16x03x01" 501

[Thu Jan 08 08:22:46 2015] [debug] ssl_engine_io.c(1523): OpenSSL: I/O error, 11 bytes expected to read on BIO#1bf568 [mem: 1f3930]
[Thu Jan 08 08:22:46 2015] [debug] ssl_engine_kernel.c(1806): OpenSSL: Exit: error in SSLv2/v3 read client hello A
[Thu Jan 08 08:22:46 2015] [info] (70014)End of file found: SSL handshake interrupted by system [Hint: Stop button pressed in browser?!]
[Thu Jan 08 08:22:46 2015] [info] Connection to child 3 closed with abortive shutdown(server [2], client
[Thu Jan 08 08:23:53 2015] [error] [client] Invalid method in request x16x03x01

Could you please suggest where it might went wrong and the way forward..