2.1 版的 faces-config.xml xsd 错误
Posted
技术标签:
【中文标题】2.1 版的 faces-config.xml xsd 错误【英文标题】:faces-config.xml xsd error for version 2.1 【发布时间】:2012-09-14 20:11:15 【问题描述】:Eclipse 一直告诉我 faces-config.xml 上的 http://java.sun.com/xml/ns/javaee/web-facesconfig_2_1.xsd
有问题,还有其他人有问题吗?
<?xml version="1.0" encoding="UTF-8"?>
<faces-config 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-facesconfig_2_1.xsd"
version="2.1">
</faces-config>
错误是:
Referenced file contains errors (http://java.sun.com/xml/ns/javaee/web-facesconfig_2_1.xsd).
如果我查看详细信息,会有大量以s4s-elt-character:.....
开头的错误
我正在使用 mojarra 2.1.13。
谢谢。
编辑:显然甲骨文改变了它,这修复了它:
http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/web-facesconfig_2_1.xsd
【问题讨论】:
如果您在使用 JSF 2.2 时遇到类似问题,同样的修复会有所帮助:oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/… 【参考方案1】:我们正在努力解决这个问题。发现问题,努力解决。请跟踪此 JIRA 问题:http://java.net/jira/browse/GLASSFISH-19115
希望这对“错误”有所帮助。
更新:此问题已解决。
【讨论】:
链接已更改【参考方案2】:正如 SJuan76 指出的那样,Oracle 在http://java.sun.com/xml/ns/javaee/web-facesconfig_2_1.xsd 处缺少 2.1 faces-config XSD 存在问题
不过,http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd 上的 2.0 XSD 还可以
错误可能是由于响应不正确(根本不是 XSD)。
解决方法是使用来自不同来源的相同 XSD(替换 xsi:schemaLocation 中的第二个地址),例如: https://svn.java.net/svn/mojarra~svn/tags/2.1.13/jsf-api/doc/web-facesconfig_2_1.xsd
警告:这只是一个临时的解决方法,一点都不好。必须有人先在 Oracle 上看看这个,然后把 2.1 XSD 放回 java.sun.com 地址。
【讨论】:
好吧,除了 Eclipse 抱怨之外,http://java.sun.com/xml/ns/javaee/web-facesconfig_2_1.xsd
失败似乎没有任何影响。希望甲骨文能解决这个问题。
显然这解决了它http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/web-facesconfig_2_1.xsd
【参考方案3】:
在浏览器中输入网址:
http://java.sun.com/xml/ns/javaee/web-facesconfig_2_1.xsd
Oracle 正在返回一个软 404,而 Eclipse(或任何人)无法将其解析为 xsd。
我敢打赌,网址有误,但我脑子里没有正确的...
更新:对于 2.0,它是 http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd
(浏览返回 .xsd);我找到了您在网络上任何地方发布的 URL,但在 oracle 中没有...您确定您的类路径中有 2.1 库吗?
【讨论】:
这是我创建项目时eclipse放的urlhttp://java.sun.com/xml/ns/javaee/web-facesconfig_2_1.xsd
修复http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/web-facesconfig_2_1.xsd
【参考方案4】:
当我创建一个具有 JSF 2.1 配置的动态 Web 项目时,我也有同样的错误 faces-config 有这个错误,所以我必须使用 JSF 2.0 配置创建 web 项目。
【讨论】:
2.1有什么好处吗? 试试http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/web-facesconfig_2_1.xsd
【参考方案5】:
我也有同样的烦恼。为了解决这个问题,我只是创建了一个 新的“动态项目” 并在项目方面(项目/属性/项目方面) 我标记了选项“JavaServer Faces”version 2.1。 之后,您将看到消息:“需要进一步配置...”(如下) 单击此消息并选择包含您的 javax.faces-2.1.x.jar 的库。 点击“确定” 和“申请”。 eclipse 创建包含正确描述的 faces-config.xml 文件。
在我的项目中生成以下配置:
<faces-config
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-facesconfig_2_1.xsd"
version="2.1">
</faces-config>
【讨论】:
以上是关于2.1 版的 faces-config.xml xsd 错误的主要内容,如果未能解决你的问题,请参考以下文章
JSF 2 中 faces-config.xml 的用途是啥?
文件无法验证为XML定义,如何修复faces-config.xml警告?
在 JSF、Spring、Spring-Security 项目中是不是需要 faces-config.xml? [复制]
无法在 JSF 应用程序中解析文档 faces-config.xml