在taglib文件中未检测到文档的语法约束(DTD或XML模式)

3

Eclipse galileo

<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/javaee"
        xmns:xsi="http://www.w3.org/2001/XMLSchema-instance"         
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee/webjsptaglibrary_2_0.xsd" 
        version="2.0">
</taglib>

我该如何消除这个警告?应用程序运行良好,看起来像是IDE问题或其他问题。我知道可以禁用警告检查,但这并不是我想要的。

1个回答

3

更改:

 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee/webjsptaglibrary_2_0.xsd"

转化为

 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/webjsptaglibrary_2_0.xsd"

请确保可以通过http://java.sun.com/xml/ns/javaee/webjsptaglibrary_2_0.xsd访问到xsd,如果无法访问,则会出现问题。

出现了不同的错误:"通过文件“taglib.tld”验证文件“webjsptaglibrary_2_0.xsd”时检测到以下错误。在大多数情况下,这些错误可以通过直接验证“webjsptaglibrary_2_0.xsd”来检测到。但是,在taglib.tld的上下文中验证webjsptaglibrary_2_0.xsd可能会发生错误。"如果我查看错误详细信息,会有许多条目,例如:“s4s-elt-character非空格字符不允许出现在除'xs:appinfo'和'xs:documentation'之外的模式元素中”。 - Łukasz
我重新检查了一下,似乎通过http://java.sun.com/xml/ns/javaee/webjsptaglibrary_2_0.xsd这个URL找不到XSD文件。如果您有本地的XSD文件,您可以将URL更改为本地路径中的xsd/webjsptaglibrary_2_0.xsd - CAMOBAP
CAMOBAP - 感谢您指出这一点,不存在的schemaLocation是问题的根源。修改了taglib标签。<?xml version="1.0" encoding="UTF-8"?> <taglib xmlns="http://java.sun.com/xml/ns/javaee" xmns: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-jsptaglibrary_2_1.xsd" version="2.1"> </taglib>警告已经消失。非常感谢您的帮助。 - Łukasz
如果这个解决方案对您有帮助,请采纳我的答案。 - CAMOBAP
@Łukasz,您需要投票(零上方的按钮)并选择复选框(它会变绿色)。 - CAMOBAP
Voete up 需要 15 的声望 :( - Łukasz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接