嘗試使用Audited Objects來移植我們一直在運行的make過程時,啓動servlet實例時出現故障。這也是我在StackOverflow上詢問這個問題的原因,而不是其他SE網站上的問題,因爲這涉及到開發人員的工具。Ubuntu 10.04上的Tomcat6和審覈對象
我將文件AO.war
複製到/var/lib/tomcat6/webapps
,當重新啓動Tomcat時,它會自動解壓到文件夾/var/lib/tomcat6/webapps/AO
。但每當我試圖啓動實例(即正常顯示在Tomcat經理),我得到這個:
FAIL - Application at context path /AO could not be started
日誌文件給我:
SEVERE: Error configuring application listener of class com.aotool.web.listener.SessionListener
java.lang.ClassNotFoundException: com.aotool.web.listener.SessionListener
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1484)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1329)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3915)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4467)
at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1251)
at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:613)
at org.apache.catalina.manager.HTMLManagerServlet.doGet(HTMLManagerServlet.java:136)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:558)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:636)
Mar 28, 2012 11:47:22 PM org.apache.catalina.core.StandardContext listenerStart
我不是一個Tomcat或Java開發人員,只有Tomcat的純粹用戶。之前,我嘗試使用here中描述的aoserver
和aoserver.cfg
(調整爲修正路徑和所有權)方法,但這種方法默默無聞,沒有提供任何線索。
注意:我將/etc/tomcat6
(及其下的文件)的所有權授予了運行Tomcat的tomcat6
用戶。
運行Tomcat的版本是:6.0.24-2ubuntu1.10
您應該不會將'/ etc/tomcat6'目錄的所有權授予'tomcat6'用戶 - 如果Tomcat服務器被黑客入侵,您希望儘可能少地寫入 - 理想情況下,在重新啓動時感染服務器。 – sarnold 2012-03-29 00:02:57
@sarnold:我意識到這一點。但是:a。)這是一個內聯網中的開發機器,而且b)如果問題得到解決,我更願意再次強化安全性。 – 0xC0000022L 2012-03-29 00:05:16
我不知道AO,但很明顯似乎在AO.war的WEB-INF/lib中缺少包含類com.aotool.web.listener.SessionListener的jar,或者該類本身在WEB中缺少-INF/classes中。你能解開戰爭並檢查嗎? – 2012-03-29 04:58:10