Search code examples
javahibernatejsptomcatdisplaytag

i want to know about tomcat server messages


I want to know in detail about these messages which is appears when i start my tomcat.. i am using display tags in my project. server is apache tomcat 7.0.

will this create problem when i will host it on server?

> May 30, 2014 10:56:13 AM org.apache.catalina.core.StandardContext
> reload
>     INFO: Reloading Context with name [/ZestYouth] has started
>     May 30, 2014 10:56:13 AM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
>     SEVERE: The web application [/ZestYouth] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the
> web application was stopped. To prevent a memory leak, the JDBC Driver
> has been forcibly unregistered.
>     May 30, 2014 10:56:13 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
>     SEVERE: The web application [/ZestYouth] appears to have started a thread named [Timer-0] but has failed to stop it. This is very likely
> to create a memory leak.
>     May 30, 2014 10:56:13 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
>     SEVERE: The web application [/ZestYouth] appears to have started a thread named
> [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0] but
> has failed to stop it. This is very likely to create a memory leak.
>     May 30, 2014 10:56:13 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
>     SEVERE: The web application [/ZestYouth] appears to have started a thread named
> [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] but
> has failed to stop it. This is very likely to create a memory leak.
>     May 30, 2014 10:56:13 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
>     SEVERE: The web application [/ZestYouth] appears to have started a thread named
> [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2] but
> has failed to stop it. This is very likely to create a memory leak.
>     May 30, 2014 10:56:13 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
>     SEVERE: The web application [/ZestYouth] appears to have started a thread named [MySQL Statement Cancellation Timer] but has failed to
> stop it. This is very likely to create a memory leak.
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://java.sun.com/jstl/core_rt is already defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://java.sun.com/jstl/core is already defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt_rt is already defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://java.sun.com/jstl/fmt is already defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/permittedTaglibs is already
> defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://jakarta.apache.org/taglibs/standard/scriptfree is already
> defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://java.sun.com/jstl/sql_rt is already defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://java.sun.com/jstl/sql is already defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://java.sun.com/jstl/xml_rt is already defined
>     May 30, 2014 10:56:15 AM org.apache.catalina.startup.TaglibUriRule body
>     INFO: TLD skipped. URI: http://java.sun.com/jstl/xml is already defined
>     May 30, 2014 10:56:16 AM org.apache.catalina.core.StandardContext reload
>     INFO: Reloading Context with name [/ZestYouth] is completed

Solution

  • On their own, no it's fine. Tomcat is just telling you that the URI's have already been loaded and defined within the Tomcat instance.

    However the possible memory leaks may cause concern because they are telling you that threads were started by your program but not stopped when the program exited. I'd perform some hardcore memory profiling to ensure that the threads are not leaking memory before putting this into production.

    To test that your system isn't leaking memory hook your Tomcat instance into VisualVM and examine the memory profile on startup, then hammer your system with 1000 users, 10000 users, 100000 users until it falls over. Then start it, run it for a bit, then shut it down. Use VisualVM to examine the threads that stay active.