0

we use an web application (FLO) which runs on an web server (windows 2003). A mysql database is connected to that application. The database runs on a database server.The application should move to a new server (windows 2008). The database will stay on its database server. The tests produced this problem: when the client uses Java 7, the application has NO access to the database. But when the client uses Java 8 everything works fine and the application has access to the databse. The application which is used at present on the windows 2003 server makes no problems, whatever which java version is used by the clients. The current server uses Tomcat 6, the new one Tomcat 7.

Here the log file of Tomcat7-stderr:

Apr 24, 2015 9:33:47 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["http-bio-443"]
leOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at stalabw.server.Protokoll.protokoll(Protokoll.java:58)
at gmbh.flo.FLO.protokoll(FLO.java:905)
at gmbh.flo.FLO.run(FLO.java:950)
java.io.FileNotFoundException: \\abc.gebiet.de\daten\FLO\log\FLO-WEB.20150424.log (The account used is a computer account. Use your global user account or local user account to access this server)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at gmbh.flo.Protokoll.protokoll(Protokoll.java:58)
at gmbh.flo.Protokoll.protokoll(Protokoll.java:30)
at gmbh.flo.Identifikation.protokoll(Identifikation.java:78)
at gmbh.flo.Identifikation.applet(Identifikation.java:62)
at gmbh.flo.Servlet.service(Servlet.java:46)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)

Here the catalina log:

INFO: Stopping service Catalina
Apr 24, 2015 9:33:47 AM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
SEVERE: The web application [/FLO] 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.
Apr 24, 2015 9:33:47 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/FLO] appears to have started a thread named [Thread-2] but has failed to stop it. This is very likely to create a memory leak.
Apr 24, 2015 9:33:47 AM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/FLO] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak.
Apr 24, 2015 9:33:47 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["http-bio-80"]
Apr 24, 2015 9:33:47 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler ["http-bio-443"]

Has anybody an idea?

Thanks!

  • check this http://stackoverflow.com/questions/3320400/to-prevent-a-memory-leak-the-jdbc-driver-has-been-forcibly-unregistered – Sai Ye Yan Naing Aye Apr 24 '15 at 08:55
  • I solved it. It It was just up to a little check mark: Java Console --> Advanced --> Advanced Security Settings --> TLS 1.1. Now, it also works with Java 7. – Bastmeister Apr 28 '15 at 14:34

0 Answers0