32
<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.5" 
    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_5.xsd">

引用的文件包含错误 (http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd)。有关更多信息,请右键单击问题视图中的消息并选择“显示详细信息...”

通过文件“web.xml”验证文件“web-app_2_5.xsd”时检测到以下错误。在大多数情况下,可以通过直接验证“web-app_2_5.xsd”来检测这些错误。但是,只有在 web.xml 的上下文中验证 web-app_2_5.xsd 时才会发生错误。

详细来说,我看到了一堆这样的:

s4s-elt-character:除 xs:appinfo 和 xs:documentation 之外的架构元素中不允许使用非空白字符。看到'var _U="undefined";'

4

7 回答 7

66

如果您替换j2eejavaee,它将正常工作。

编辑 :

<web-app version="2.5" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

编辑:

要了解与此错误相关的任何进一步信息。请按照链接。在这里,您将找到 Java EE 部署描述符 (web.xml) 的模式。

于 2012-11-18T04:56:57.817 回答
45

代替

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd">

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee;http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd">

解决方案是您必须在 URL 之间放置分号

我相信你不会再收到错误了:)

于 2013-05-30T13:21:44.993 回答
7

我建议您;在两段之间添加: xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

像这样:

:xsi:schemaLocation="http://java.sun.com/xml/ns/javaee;http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
于 2017-09-11T17:53:35.803 回答
3

在xsi:schemaLocation之间添加分号,如下所示

"http://java.sun.com/xml/ns/javaee;http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

这也解决了我在<servlet-name>标签行中的这个错误。

“cvc-id.3:身份约束‘web-common-servlet-name-uniqueness’匹配元素‘web-app’的字段,但该元素没有简单类型。”

于 2021-07-04T18:57:56.970 回答
2

就我而言,我已经更换了

xsi:schemaLocation=" http://java.sun.com /../.."

xsi:schemaLocation=" http://xmlns.jcp.org /../.."

干杯!

于 2017-04-22T07:23:29.873 回答
1

从表面上看,schemaLocation 似乎是错误的。解决它似乎重定向到 HTML 页面而不是 XSD 架构。

除非您真的想在运行时进行 XSD 验证,否则我建议您简单地删除这一行。请记住,相关部分将由您的 servlet 容器验证。

于 2012-11-18T04:52:18.940 回答
0

如下替换 schemaLocation 为我解决了错误:

xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/j2ee; http://xmlns.jcp.org/xml/ns/j2ee/web-app_2_4.xsd"
于 2021-02-11T13:27:19.320 回答