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中所配置的内容,而忽略了注解配置的内容。

时间: 2024-11-09 12:23:38

Servlet使用注解配置URl提示404错误的相关文章

IIS:打开任意 .aspx 页面,提示 404 错误

环境:win2003 sp2 x64 + iis 6.0 + asp.net 2.0 问题描述 IIS 打开任意 .aspx 页面,提示 404 错误 无法找到该页 问题解决 IIS 的 "Web 服务扩展",找到"ASP.NET v2.0.50727"项,设置为"允许". 如果找不到"ASP.NET v2.0.50727"项,可能是: 1.未安装 .NET Framework 2.0,请先安装: 2..net2.0已经安装,

iis7 部署 mvc4项目提示404错误

1.装了.net framework 4.0框架 2.重新注册了asp.net_iisreg -i 访问mvc项目仍提示404错误 搜了一下,有些服务器还要装个补丁 https://support.microsoft.com/zh-cn/help/980368/a-update-is-available-that-enables-certain-iis-7.0-or-iis-7.5-handlers-to-handle-requests-whose-urls-do-not-end-with-a-

ajax请求路径正确,可是页面提示404错误。

昨晚项目升级,开发环境.测试环境一切OK,一上线,页面空白.页面console打印404.查看后台日志报如下错误:. Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '=' 数据库: mysql 可见404不一定是URL的问题哦. 解决问题的办法: 找到与该请求相关的查询语句,我是用 Spring jdbcTemplate做的,找到对应sql所涉及到

wordpress修改固定链接及修改链接后链接提示404错误的解决办法

wordpress默认的url实在是不好看又不好记忆,而且还不利于SEO.因此,我就捣鼓着把url做一个自定义.自定义的方式如下: 建议使用/%postname%的形式,这样利于SEO. 修改之后,localhost/wordpress一下,点击导航.点击文章标题.咦,怎么就404了?明明修改之前是可以正常访问的! 郁闷之下,我各种在仪表盘中修改,各种度娘.好像没发现解决方案.知道后来,看到这么篇文章http://blog.csdn.net/think2me/article/details/70

WAMP的localhost提示404错误

本地80端口被占用,需要修改WAMP的默认端口 修改设置: 找到 bin/apache/apache***/conf/httpd.conf文件 将文件中的80修改为8088 (注:修改三个位置) 访问: localhost:8088/***.php

如何为Servlet类配置url以及form表单动作元素的写法。

在进行JavaWeb开发,使用Servlet的过程中,遇到了不少的问题,在此特地做一个总结.按照一般开发的习惯:jsp文件统一部署到Webroot文件夹目录下,Servlet类统一部署在src文件夹下的一个Servlet包内.## 1.要配置url的地方1.首先在Servlet类里面也要配置url.2.a标签以及form表单的action元素那里需要找到对应的Servlet类.3.在进入Servlet类里面后离开也要寻找另一个界面.## 2.在Servlet类里面配置url格式如下: <serv

Springmvc 访问页面出现404错误

配置springmvc时出错: 我在web.xml中添加 <!-- springMvc配置 --> <servlet> <servlet-name>springMvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- springMvc-XML配置文件 --> <in

nginx自定义404错误页面

在Nginx环境下配置自定义的404错误页面转向,避免给用户展示生硬.不友好的错误信息.可以给出如下提示:很抱歉,您访问的页面不存在或已被删除. 注意事项: 一.修改nginx.conf之前做好备份,避免出现问题. 二.定义页面时注意路径是否正确. ①首先创建一个404错误时显示的页面,如放在你的网站根目录下的404.html.(内容随便) ②在nginx.conf中的http区域加入fastcgi_intercept_errors on: http { ... fastcgi_intercep

Yii 2.0 GII 访问404错误

网上大部分都是普通的开启和配置资料 按照网上资料配置 访问localhost/index/php?r=gii 总是提示404错误 解决方法如下: Yii基础版中的 web.php 代码如下 if (YII_ENV_DEV) { // configuration adjustments for 'dev' environment $config['bootstrap'][] = 'debug'; $config['modules']['debug'] = [ 'class' => 'yii\deb