Java–cvc-complex-type.4:Attribut ‘version’ must appear on element ‘web-app’

本文介绍了如何解决web.xml中未指定版本导致的错误提示问题,提供了两种解决方案:一是明确指定版本号;二是暂时关闭Eclipse的XML验证功能,并详细解释了操作步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题解析: 
在web.xml中的以下代码中

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" id="WebApp_ID">

因为web-app标签没有指定version,所以这时候就出现了一个红色的“x”。 
但是该错误并没有导致程序的正常运行。 
解决方法两种: 
方法一、指定一下version。

<web-app version="3.0" ......>

(PS:没有去详细了解过指定version之后的一些差异,或者指定一个version之后会不会出现其他项目部署上的一些问题。反正我这边暂时是正常了,如果后续有错误的话,这边我再来记录下。)

方法二、暂时关闭Eclipse对于XML的验证。 
XML编写是否符合规范,通过XML Schema或者DTD进行验证,但是有些时候XML的一些错误并不会导致整个项目的运行,这个时候,虽然项目中会显示“x”,我们可以先关闭Eclipse对于XML的验证。不过这当然不是最好的解决问题的办法。 
操作方法:(借鉴过来,直接复制了) 
1.菜单【Windows】 -【Preperences】-【Validation】
 
2.在右边找到“XML Validator”,把取消【Bulid】复选框的选中状态,保持【Manual】 的选中状态。 
(PS:因为我们最后还需要确保XML的正确性,这个可以通过选择XML文件,在右键菜单中选择【Validate】手工来验证,如果XML有错,会 弹出窗口提示。但如果把【Manual】复选框也取消的话,再手工验证,即使XML真有错,也不会正确提示。)

操作截图如下: 
操作截图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值