A child container failed during start Tomcat 错误提示

来源:互联网 发布:android程序员 编辑:程序博客网 时间:2024/06/08 06:59

启动Java Web项目时提示错误:A child Container failed during start
完整错误信息如下:

严重: A child container failed during start  java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/testcs_dn-admin-web]]      at java.util.concurrent.FutureTask.report(Unknown Source)      at java.util.concurrent.FutureTask.get(Unknown Source)      at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123)      at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:799)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)      at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)      at java.util.concurrent.FutureTask.run(Unknown Source)      at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)      at java.lang.Thread.run(Unknown Source)  Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/testcs_dn-admin-web]]      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)      ... 6 more  Caused by: java.lang.IllegalArgumentException: Servlet mapping specifies an unknown servlet name Action      at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3275)      at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3254)      at org.apache.catalina.deploy.WebXml.configureContext(WebXml.java:1430)      at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1344)      at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:876)      at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:374)      at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)      at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)      at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5355)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      ... 6 more  十二月 09, 2014 2:21:25 下午 org.apache.catalina.core.ContainerBase startInternal  严重: A child container failed during start  java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]      at java.util.concurrent.FutureTask.report(Unknown Source)      at java.util.concurrent.FutureTask.get(Unknown Source)      at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123)      at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:300)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:731)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      at org.apache.catalina.startup.Catalina.start(Catalina.java:689)      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)      at java.lang.reflect.Method.invoke(Unknown Source)      at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:321)      at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)  Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)      at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)      at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)      at java.util.concurrent.FutureTask.run(Unknown Source)      at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)      at java.lang.Thread.run(Unknown Source)  Caused by: org.apache.catalina.LifecycleException: A child container failed during start      at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131)      at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:799)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      ... 6 more  十二月 09, 2014 2:21:25 下午 org.apache.catalina.startup.Catalina start  严重: The required Server component failed to start so Tomcat is unable to start.  org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8006]]      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)      at org.apache.catalina.startup.Catalina.start(Catalina.java:689)      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)      at java.lang.reflect.Method.invoke(Unknown Source)      at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:321)      at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)  Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]]      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)      at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:731)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      ... 7 more  Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]]      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)      at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      ... 9 more  Caused by: org.apache.catalina.LifecycleException: A child container failed during start      at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131)      at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:300)      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)      ... 11 more  十二月 09, 2014 2:21:25 下午 org.apache.coyote.AbstractProtocol pause  信息: Pausing ProtocolHandler ["http-bio-8081"]  十二月 09, 2014 2:21:25 下午 org.apache.coyote.AbstractProtocol pause  信息: Pausing ProtocolHandler ["ajp-bio-8010"]  十二月 09, 2014 2:21:25 下午 org.apache.catalina.core.StandardService stopInternal  信息: Stopping service Catalina  十二月 09, 2014 2:21:25 下午 org.apache.coyote.AbstractProtocol destroy  信息: Destroying ProtocolHandler ["http-bio-8081"]  十二月 09, 2014 2:21:25 下午 org.apache.coyote.AbstractProtocol destroy  信息: Destroying ProtocolHandler ["ajp-bio-8010"]  

解决方法:
解决这个问题的关键在于错误信息中的:

Servlet mapping specifies an unknown servlet name Action

打开项目下的“src\main\webapp\WEB-INF\web.xml”文件,查找类似下面的节点:

<servlet-mapping>    <servlet-name>kaptcha</servlet-name>    <url-pattern>/valicode.jpg</url-pattern></servlet-mapping>

检查<url-pattern>子节点的路径是正确。如果正确的话,就要看是否在其他地方使用的是相对路径,而本处使用的是绝对路径,换句话说,对于/valicode.jpg,是否要将“/”去掉

阅读全文
0 0
原创粉丝点击