2012-11-11 45 views
2

我有一個Grails應用程序可以在開發過程中正常運行,但是當我創建一個war文件時(grails dev create war/target例如.helloworld.war).war無法正確部署。「Severe:Error Listener Start」使用spring-security-ldap插件部署Grails應用程序1.0.6

通過消除過程,我將問題縮小到了spring-security-ldap插件。

我已經在三種環境測試這一點:

的Tomcat 7的MacOSX JDK7 的Tomcat 6的Ubuntu 12.04 JDK7 的Tomcat 7的Ubuntu 12.04 JDK7

我用相同的JDK版本在所有環境中進行編譯。

的錯誤,我得到:

INFO:部署Web應用程序歸檔helloworld.war 2012年11月11日下午12點54分15秒開始org.apache.catalina.core.StandardContext嚴重 :錯誤listenerStart 十一月11,2012 12:54:15 PM org.apache.catalina.core.StandardContext start SEVERE:Context [/ helloworld]啓動因以前的錯誤而失敗 2012年11月11日下午12時54分15秒org.apache.catalina。 loader.WebappClassLoader clearReferencesThreads SEVERE:Web應用程序[/ helloworld]似乎已經啓動了一個名爲[MongoCleaner1671814044]的線程,但未能阻止它。這很可能造成內存泄漏。

我也按照說明將FINE日誌記錄添加到類文件夾,但是這似乎並沒有幫助我在這裏。

僅供參考我按照這個線程:http://grails.1312388.n4.nabble.com/Deployment-problems-td4628710.html

有沒有人遇到此與彈簧安全LDAP 1.0.6解決了嗎?

在此先感謝?

回答

7

放在一個名爲在WEB-INF/classes(unwar您的應用程序)文件夾logging.properties文件,並把這個裏面:

handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHandler 

org.apache.juli.FileHandler.level = FINE 
org.apache.juli.FileHandler.directory = /var/log 
org.apache.juli.FileHandler.prefix = myapp-tomcat. 

java.util.logging.ConsoleHandler.level = FINE 
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter 

接着重新啓動Tomcat。

您的應用程序仍然會失敗,但裏面的文件/var/log/myapp-tomcat.log你會發現比無用更詳細的錯誤跟蹤「嚴重錯誤:listenerStart」

有可能是缺少類文件或數據庫配置錯誤。

+2

這是一個巨大的幫助。謝謝。我遵循其他人關於如何獲取日誌記錄的說明,但他們錯過了寫入文件的位置。所以我錯誤地認爲產量會達到catalina-2012-x-x。我能夠發現來自Spring的異常,這導致我找到了根本原因(當我有足夠的時間來徹底記錄它時,我會在這裏發佈)。堅實的答案,非常感謝你! – binarygiant

+0

我正在將一個項目轉換爲使用Spring Boot。這幫助我發現web.xml中定義的默認上下文監聽器與Spring Boot創建的監聽器衝突。 – Pytry

相關問題