PAS兼容: 业务应用使用了servlet注解,访问servlet报错:HTTP状态404-Not Found

当使用@WebServlet注解访问Servlet时遇到HTTP 404错误,原因是web.xml中web-app标签版本为2.3,不支持注解。要解决此问题,需将web-app标签版本升级到3.0或更高,并设置metadata-complete属性为false,以启用注解支持。确保修改后的web.xml配置正确,例如设置为3.1版本并添加metadata-complete="false"。
摘要由CSDN通过智能技术生成

【问题描述】

业务应用使用了servlet注解,访问servlet报错:HTTP状态404-Not Found

 【问题原因】

业务应用使用了servlet的注解@WebServlet,应用web.xml里使用的web-app标签版本是2.3版本。从Servlet3.0开始,配置Servlet才能支持注解方式,当前2.3版本不支持注解方式。

【解决方案】

业务应用使用了@WebServlet注解,web-app标签需要更改为3.0或以上版本。

修改方式如下:

修改应用web.xml的版本,例如:指定为3.1版本,同时建议将metadata-complete设置为false。
web-app配置示例如下:

​
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="Java EE: XML Schemas for Java EE Deployment Descriptors" 
 xsi:schemaLocation="Java EE: XML Schemas for Java EE Deployment Descriptors http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
 id="WebApp_ID" version="3.1" metadata-complete="false">

​

【补充说明】

metadata-complete属性值为true,则容器在部署时将只依赖部署描述文件,忽略所有的注解,metadata-complete属性值为false,则表示启用注解支持。

更多说明请查阅  < web-app>标签的metadata-complete属性的说明

【原文链接】

http://doc.primeton.com/pages/viewpage.action?pageId=61921920

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值