使用基于代码的配置获取java.lang.NoSuchMethodException:org.apache.catalina.deploy.WebXml addServlet
仅使用基于代码的配置无法启动Spring Web App。获取错误:使用基于代码的配置获取java.lang.NoSuchMethodException:org.apache.catalina.deploy.WebXml addServlet
INFO: validateJarFile(C:\Users\user1\Idea13 Projects\WebApp\target\WebApp-1.0-SNAPSHOT\WEB-INF\lib\javax.servlet-api-3.1.0.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\Users\user1\Idea13 Projects\WebApp\target\WebApp-1.0-SNAPSHOT\WEB-INF\lib\tomcat-el-api-7.0.47.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/el/Expression.class
org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\Users\user1\Idea13 Projects\WebApp\target\WebApp-1.0-SNAPSHOT\WEB-INF\lib\tomcat-embed-core-7.0.47.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\Users\user1\Idea13 Projects\WebApp\target\WebApp-1.0-SNAPSHOT\WEB-INF\lib\tomcat-servlet-api-7.0.47.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
org.apache.tomcat.util.digester.Digester endElement
SEVERE: End event threw exception
java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addServlet
.........
org.apache.catalina.startup.ContextConfig parseWebXml
SEVERE: Parse error in application web.xml file at file:/C:/Users/user1/.IntelliJIdea13/system/tomcat/Unnamed_WebApp/conf/web.xml
org.xml.sax.SAXParseException; systemId: file:/C:/Users/user1/.IntelliJIdea13/system/tomcat/Unnamed_WebApp/conf/web.xml; lineNumber: 104; columnNumber: 13; Error at (104, 13) : org.apache.catalina.deploy.WebXml addServlet
...
Caused by: java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addServlet
org.apache.catalina.startup.ContextConfig parseWebXml
SEVERE: Occurred at line 104 column 13
org.apache.catalina.deploy.WebXml setVersion
WARNING: Unknown version string [3.1]. Default version will be used.
org.apache.catalina.startup.ContextConfig configureStart
SEVERE: Marking this application unavailable due to previous error(s)
org.apache.catalina.core.StandardContext startInternal
SEVERE: Error getConfigured
org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [] startup failed due to previous errors
据我所知,它指向web.xml
,但我不使用它。如何解决它?
UPDATE:
我删除了从部署路径catalina*
后我得到:
SEVERE: Servlet.service() for servlet [jsp] in context with path [] threw exception [java.lang.ClassCastException: org.apache.catalina.core.DefaultInstanceManager cannot be cast to org.apache.tomcat.InstanceManager] with root cause
java.lang.ClassCastException: org.apache.catalina.core.DefaultInstanceManager cannot be cast to org.apache.tomcat.InstanceManager
解决
SEVERE: Parse error in application web.xml file at file:/C:/Users/user1/.IntelliJIdea13/system/tomcat/Unnamed_WebApp/conf/web.xml org.xml.sax.SAXParseException; systemId: file:/C:/Users/user1/.IntelliJIdea13/system/tomcat/Unnamed_WebApp/conf/web.xml; lineNumber: 104; columnNumber: 13; Error at (104, 13) : org.apache.catalina.deploy.WebXml addServlet Caused by: java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addServlet
转到您的WEB-INf/lib
和删除catalina.*.jar
,然后重新启动你的tomcat。 或柜面Maven项目的提到它的范围为provided
<scope>provided</scope>
注:该解决方案是通用的,请发表您的web.xml
如果问题perists
这不起作用。我没有'web.xml' – 2014-11-24 10:30:49
如果问题解决了,你为什么不接受回答? – naXa 2015-03-19 11:24:16