[英]War file failed to deploy it on Tomcat 7
我正在使用Grails Frame工作,當我創建一個war文件並將其部署在Tomcat-7上時,出現以下錯誤。 但是有些時候部署成功了。
2016年7月29日上午10:19:23 org.apache.catalina.core.StandardContext startInternal SEVERE:錯誤listenerStart 2016年7月29日上午10:19:23 org.apache.catalina.core.StandardContext startInternal SEVERE:上下文[]啟動由於先前的錯誤而失敗2016-07-29 10:19:23,951 [localhost-startStop-1] WARN生命周期。ShutdownOperations-運行關閉操作時發生錯誤:BeanFactory未初始化或已關閉-在通過ApplicationContext訪問bean之前調用“刷新” java.lang.IllegalStateException:BeanFactory未初始化或已關閉-在通過ApplicationContext在java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:471)處通過ApplicationContext訪問bean之前,請調用“刷新” $ Sync.innerRun(FutureTask.java:334)(位於java.util.concurrent.FutureTask.run(FutureTask.java:166)(位於java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)) parallel.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615 ),網址為java.lang.Thread.run(Thread.java:722),2016年7月29日上午10:19:23 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc嚴重:Web應用程序[]注冊了JDBC驅動程序[com。 mysql.jdbc.Driver],但在Web應用程序停止時未能注銷它。 為了防止內存泄漏,已強制注銷JDBC驅動程序。 2016年7月29日,上午10:19:23 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads嚴重:Web應用程序[]似乎已啟動名為[廢棄的連接清除線程]的線程,但未能停止。 這很可能造成內存泄漏。 2016年7月29日,上午10:19:23 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads嚴重:Web應用程序[]似乎已啟動名為[net.sf.ehcache.CacheManager@6b0bbde6]的線程,它。 這很可能造成內存泄漏。
我不明白為什么會這樣。 有人可以告訴我這是什么問題嗎? 我認為此錯誤即將到來,因為由於某些問題其無法連接到mysql數據庫。
如果您用Google來表達這句話: SEVERE: Error listener
您將得到一些解釋為什么會這樣。
默認情況下,Tomcat在Listeners and Filters
初始化代碼中不顯示日志/異常消息。
嘗試添加logging.properties
文件,並將其放置在war
WEB-INF / class中,其內容如下:
org.apache.catalina.core.ContainerBase.[Catalina].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler
為了BuildConfig.groovy
操作,您可以BuildConfig.groovy
以下方式在BuildConfig.groovy
中自動進行操作:
grails.war.resources = { stagingDir, args ->
def tomcatLoggingProperties = '''org.apache.catalina.core.ContainerBase.[Catalina].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].handlers = java.util.logging.ConsoleHandler'''
new File("${stagingDir}/WEB-INF/classes/logging.properties").write tomcatLoggingProperties
}
將戰爭部署到Tomcat之后,檢查您的catalina.out
日志文件。 現在,它應該提供有關該問題的更多反饋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.