2

我在 Eclipse Juno 中使用 Tomcat 7 在 JAVA 7 中创建了一个应用程序。当时它运行良好,但几天后它停止工作。现在,每当我尝试运行该应用程序时,它都会显示错误:

SEVERE: A child container failed during start java.util.concurrent.ExecutionException:

org.apache.catalina.LifecycleException:无法在 java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source) 在 java.util 中启动组件 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/MuShag]]。 concurrent.FutureTask.get(Unknown Source) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800) at org. apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) 在 org.apache.catalina.core.ContainerBase$StartChild。在 java.util.concurrent.FutureTask.run(Unknown Source) 在 java.util.concurrent 的 java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 调用 (ContainerBase.java:1549)。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[/MuShag]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) ... 7 更多原因:java.lang.IllegalArgumentException:名为 [AdminController] 和 [muShag.Private.controller.AdminController] 的 servlet 都映射到 org.apache.catalina.deploy.WebXml.addServletMapping(WebXml.java:335) 不允许的 url 模式 [/AdminController] ) 在 org.apache.catalina.startup 的 org.apache.catalina.startup.ContextConfig.processAnnotationWebServlet(ContextConfig.java:2412)。ContextConfig.processAnnotationsStream(ContextConfig.java:2125) at org.apache.catalina.startup.ContextConfig.processAnnotationsFile(ContextConfig.java:2080) at org.apache.catalina.startup.ContextConfig.processAnnotationsFile(ContextConfig.java:2073) at org .apache.catalina.startup.ContextConfig.processAnnotationsFile(ContextConfig.java:2073) 在 org.apache.catalina.startup.ContextConfig.processAnnotationsFile(ContextConfig.java:2073) 在 org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig .java:1300) 在 org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:878) 在 org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:369) 在 org.apache.catalina。 org.apache.catalina.util 中的 util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)。LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5179) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) .. . 7 更多 2013 年 7 月 26 日晚上 9:36:50

现在如何处理这些错误。在某个地方冲浪太多之后,我通过添加 commons-looging.jar 找到了一种方法,但它不起作用。

4

1 回答 1

12

错误消息说明了一切:

名为 [AdminController] 和 [muShag.Private.controller.AdminController] 的 servlet 都映射到不允许的 url 模式 [/AdminController]。

修复您的 web.xml 或注释,以便这两个 servlet 不会映射到相同的 url 模式,或者只定义其中一个 servlet。

于 2013-07-26T16:34:06.333 回答