@WebServlet 注解value少了左斜线-导致报错--Exception starting Context with name-- Failed to start component
报错如下
Apr 15, 2016 3:58:21 PM org.apache.catalina.core.StandardContext reload
INFO: Reloading Context with name [/DoWeb] has started
Apr 15, 2016 3:58:22 PM org.apache.catalina.core.StandardContext reload
SEVERE: Exception starting Context with name [/DoWeb]
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/DoWeb]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3827)
at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:291)
at org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:5608)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1377)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1381)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1381)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1349)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: Invalid <url-pattern> Foo1 in servlet mapping
at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3153)
at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3128)
at org.apache.catalina.startup.ContextConfig.configureContext(ContextConfig.java:1376)
at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1184)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:779)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:306)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5150)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
... 8 more
Apr 15, 2016 3:58:22 PM org.apache.catalina.core.StandardContext reload
INFO: Reloading Context with name [/DoWeb] is completed
原因是
@WebServlet("Foo")
public class Foo1 extends HttpServlet {
}
如果加上左斜线,就对了。不会报这个错误了。
@WebServlet("/Foo")