其實我已經在tomcat中做了一個本地設置的一個Java應用程序,那時候它的工作正常,但一個月後它再次給出下面的錯誤而不更改任何代碼。Java應用程序停止工作,並給予例外
javax.servlet.ServletException: Servlet.init() for servlet action threw exception
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java.lang.Thread.run(Thread.java:595)
根源
java.lang.NoClassDefFoundError
com.lexmark.efoundations.lxpd.gui.struts.ActionServlet.init(Unknown Source)
javax.servlet.GenericServlet.init(GenericServlet.java:212)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java.lang.Thread.run(Thread.java:595)
我還檢查了提級 「com.lexmark.efoundations.lxpd.gui.struts.ActionServlet」 出現在適當的位置。
你說你已經檢查過它「存在於適當的地方」 - 你究竟在哪裏擁有它? – 2011-04-19 05:26:50
當我知道JAR時,這種錯誤的最常見原因實際上是我需要確保預期JAR的更新或更舊版本不在類路徑中的早期版本。 – pickypg 2011-04-19 05:27:53
我已經在「com.lexmark.efoundations.lxpd.gui.struts」中檢查過ActionServlet類是否存在 – 2011-04-19 05:29:15