子容器启动失败,java build path 里面没有maven dependencies

来源:2-5 自由编程

cccca

2019-10-19 21:27:25


import java.io.IOException;


import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;


public class Frist extends HttpServlet {


@Override

protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String category=request.getParameter("name");

String html="<p style='color:blue'>"+category+"</p>";

response.getWriter().print(html);

}


}

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">

  <display-name>oneServe</display-name>

  <welcome-file-list>

    <welcome-file>index.html</welcome-file>

    <welcome-file>index.htm</welcome-file>

    <welcome-file>index.jsp</welcome-file>

    <welcome-file>default.html</welcome-file>

    <welcome-file>default.htm</welcome-file>

    <welcome-file>default.jsp</welcome-file>

  </welcome-file-list>

  <servlet>

  <servlet-name>SerletProj</servlet-name>

  <servlet-class>com.textSever.Frist</servlet-class>

  </servlet>

  <servlet-mapping>

  <servlet-name>SerletProj</servlet-name>

  <url-pattern>ShopSerlet</url-pattern>

  </servlet-mapping>

</web-app>


严重: 子容器启动失败

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/oneServe]]

at java.util.concurrent.FutureTask.report(FutureTask.java:122)

at java.util.concurrent.FutureTask.get(FutureTask.java:192)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)

at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/oneServe]]

at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)

... 6 more

Caused by: java.lang.IllegalArgumentException: Invalid <url-pattern> [ShopSerlet] in servlet mapping

at org.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3175)

at org.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3162)

at org.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1376)

at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1156)

at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:769)

at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)

at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5063)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

... 6 more


十月 19, 2019 9:23:04 下午 org.apache.catalina.core.ContainerBase startInternal

严重: 子容器启动失败

java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 子容器启动失败

at java.util.concurrent.FutureTask.report(FutureTask.java:122)

at java.util.concurrent.FutureTask.get(FutureTask.java:192)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)

at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:258)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:766)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.startup.Catalina.start(Catalina.java:688)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:353)

at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:493)

Caused by: org.apache.catalina.LifecycleException: 子容器启动失败

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:942)

at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)

Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/oneServe]]

at java.util.concurrent.FutureTask.report(FutureTask.java:122)

at java.util.concurrent.FutureTask.get(FutureTask.java:192)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)

... 8 more

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/oneServe]]

at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)

... 6 more

Caused by: java.lang.IllegalArgumentException: Invalid <url-pattern> [ShopSerlet] in servlet mapping

at org.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3175)

at org.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3162)

at org.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1376)

at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1156)

at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:769)

at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)

at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5063)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

... 6 more


十月 19, 2019 9:23:04 下午 org.apache.catalina.startup.Catalina start

严重: 所必需的服务组件启动失败,所以无法启动Tomcat

org.apache.catalina.LifecycleException: 子容器启动失败

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:942)

at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:258)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardService.startInternal(StandardService.java:422)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:766)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.startup.Catalina.start(Catalina.java:688)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:353)

at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:493)

Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: 子容器启动失败

at java.util.concurrent.FutureTask.report(FutureTask.java:122)

at java.util.concurrent.FutureTask.get(FutureTask.java:192)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)

... 13 more

Caused by: org.apache.catalina.LifecycleException: 子容器启动失败

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:942)

at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1412)

at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1402)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at java.lang.Thread.run(Thread.java:745)

Caused by: java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/oneServe]]

at java.util.concurrent.FutureTask.report(FutureTask.java:122)

at java.util.concurrent.FutureTask.get(FutureTask.java:192)

at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:931)

... 8 more

Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/oneServe]]

at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)

... 6 more

Caused by: java.lang.IllegalArgumentException: Invalid <url-pattern> [ShopSerlet] in servlet mapping

at org.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3175)

at org.apache.catalina.core.StandardContext.addServletMappingDecoded(StandardContext.java:3162)

at org.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1376)

at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1156)

at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:769)

at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)

at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5063)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)

... 6 more


十月 19, 2019 9:23:04 下午 org.apache.coyote.AbstractProtocol pause

信息: Pausing ProtocolHandler ["http-nio-8080"]

十月 19, 2019 9:23:04 下午 org.apache.coyote.AbstractProtocol pause

信息: Pausing ProtocolHandler ["ajp-nio-8009"]

十月 19, 2019 9:23:04 下午 org.apache.catalina.core.StandardService stopInternal

信息: Stopping service [Catalina]

十月 19, 2019 9:23:04 下午 org.apache.coyote.AbstractProtocol destroy

信息: 正在摧毁协议处理器 ["http-nio-8080"]

十月 19, 2019 9:23:04 下午 org.apache.coyote.AbstractProtocol destroy

信息: 正在摧毁协议处理器 ["ajp-nio-8009"]


写回答

2回答

好帮手慕小班

2019-10-20

同学你好,在报错信息中有具体的报错内容呐,例如:

http://img.mukewang.com/climg/5dabd6a2090c374206080244.jpg

如上所示:根据报错信息,检查url-pattern中的内容,缺少/,所以定位到错误。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

0

好帮手慕小班

2019-10-20

同学你好,在web.xml文件中url-pattern里注意  / 的添加,例如:

<servlet>
  <servlet-name>SerletProj</servlet-name>
  <servlet-class>com.textSever.Frist</servlet-class>
 </servlet>
 <servlet-mapping>
  <servlet-name>SerletProj</servlet-name>
  <url-pattern>/ShopSerlet</url-pattern>
 </servlet-mapping>

在url-pattern中的匹配规则需要注意一般情况下需要以以“/”字符开头。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

0
hccca
h 我想问一下,你是在检查我的代码检查出来的,还是在我的报错中知道我这少了个“/”
h019-10-20
共1条回复

0 学习 · 9666 问题

查看课程