Servlet使用注解配置URl提示404错误
Posted Bradwarden
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet使用注解配置URl提示404错误相关的知识,希望对你有一定的参考价值。
刚接触servlet 3.0,使用注释描述servlet
@WebServlet(name="FirstServlet", urlPatterns="/FirstServlet" )
但是无论部署好了无论如何访问都报404,纠结了很久,是因为web.xml 里面的一个属性设置有问题
将
metadata-complete="true"
改为
metadata-complete="false"
为什么将metadate-complete设置为false,就可以运行了呢?
因为:
Servlet 3.0 的部署描述文件 web.xml 的顶层标签 <web-app> 有一个 metadata-complete 属性,该属性指定当前的部署描述文件是否是完全的。如果设置为 true,则容器在部署时将只依赖部署描述文件,忽略所有的注解(同时也会跳过 web-fragment.xml 的扫描,亦即禁用可插性支持);如果不配置该属性,或者将其设置为 false,则表示启用注解支持(和可插性支持)。
当web.xml和注解同时存在的时候,会使用的是web.xml中所配置的内容,而忽略了注解配置的内容。
以上是关于Servlet使用注解配置URl提示404错误的主要内容,如果未能解决你的问题,请参考以下文章
@WebFilter("")配置servlet访问出现404的原因
Servlet中写了注解@WebServlet但访问servlet报404错误
Servlet中写了注解@WebServlet但访问servlet报404错误