在Linux上的Tomcat 5.5.27下(在生產環境下的CentOS和Ubuntu 10.04的開發環境下),我們正在經歷一些奇怪的webapp部署行爲。應用程序A和應用程序B幾乎完全相同(完全相同的庫,複製的Maven項目),但應用程序B的不同之處僅在於其JPA實體被註釋爲訪問同一模式中的不同表(JNDI數據庫引用是相同)。爲什麼Tomcat webapp在相同的Tomcat實例中啓動幾乎相同的應用程序時失敗?
當應用被部署到任何環境中,應用程序B就不開始。但是:
- 從Tomcat管理控制檯手動啓動停滯的應用程序,工作正常(???)。
- 嘗試重新啓動Tomcat後,按字母順序排列的後來的應用無法啓動。點#1仍然從[仍待到開始]應用B的記錄,也沒有從Tomcat的「catalina.out的」錯誤有效(???)
- 記錄是配置(log4j的),但是,我們什麼也得不到日誌文件(注意:日誌記錄是一旦應用程序啓動並運行)。
我已經做了相當徹底的信息搜索(Apache/Tomcat bugzilla,Google),但我沒有發現任何真正的用途。其他posts已經發現在服務器的'context.xml''Context'節點上使用antijarlocking和antiresourcelocking屬性,但也有人建議這在Linux下是不必要的/無效的(在這裏也沒有出現過) 。
任何想法?
乾杯
豐富
附:從Tomcat 5.5.x升級不是一種選擇,目前(IT支持等)。
拉爾夫,我會看看這個,讓你知道我的身體情況如何。值得注意的是,你提到Spring是,這些是基於Spring的應用程序;-)。另外,感謝您的快速回復。 – 2010-12-17 15:07:08
做什麼它說錫!是的,那是有效的。奇怪的是,我有一個模糊的重新選擇,我們已經在另一個項目上設置了這個webAppRootKey,在過去的4-5年中(真的;-))。再次感謝。 – 2010-12-17 15:38:33