问题标签 [xerces2-j]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2864 浏览

xsd - 支持 XSD 1.1 的 Java 库

是否有支持 XSD 1.1 的 java 库。我已经尝试找到它 2 天。我发现的唯一实现是与 JAXP 1.4 一起工作的Xerces2 Java 2.11.0 (XML Schema 1.1) (Beta) 。这个测试版也不能很好地工作。XSD 1.1 中引入的“断言测试”等基本功能失败了。请帮我找到一个支持 XSD 1.1 进行验证的可靠 Java 库(如果有的话)。提前致谢。

0 投票
2 回答
1444 浏览

java - 动态生成 XML Schema

我正在尝试使用 Xerces-J 动态生成 XML 模式并收到以下错误,感谢有关它的任何帮助。

org.xml.sax.SAXParseException:s4s-elt-schema-ns:元素“xs:schema”的命名空间必须来自模式命名空间“http://www.w3.org/2001/XMLSchema”。

0 投票
1 回答
4439 浏览

java - 名称“”对于 JDOM/XML 命名空间是不合法的

我使用 JDOM2 从远程提要检索不受我控制的 XML。对于其中一个,我得到了这个错误:

名称 "" 对于 JDOM/XML 命名空间是不合法的:命名空间 URI 必须是非空且非空的字符串。

这是 XML 的示例:

如果我使用正则表达式删除 xsi:schemaLocation,该错误就会消失。

这是我的 JDOM2 解析代码。它在 builder.build 上失败

0 投票
1 回答
406 浏览

xml - 使用 Xerces-j 验证 XML 文档

我正在尝试使用 Xerces-J 验证 XML 文档。

我希望验证器获取并解析任何关联的 XSD 或 DTD 文件(使用 schemalocation、nonamespaceschemalocationa 和 DOCTYPE 引用)。似乎这些资源的加载可以委托给 Resolver 类。

然而,我看到的所有示例都是从模式创建验证器开始的。

是否可以反过来驱动这个,要求 xerces 验证 XML 文档,并让它加载它需要的内容,或者我必须首先解析 XML 文件以查找模式引用,加载它们,然后从模式创建验证器?

在理想情况下,验证器也将支持 xsd 1.1

0 投票
1 回答
742 浏览

java - xerces Xpath - 从另一个节点搜索节点

我有以下 XML:

以及以下java代码:

此代码返回:3 3 3 3

我认为这段代码应该返回 3 2 3 1 因为“prova”变量包含文档的所有“RecordReference”节点,而“prova2”只包含一个产品节点的特定“RecordReference”节点。

如何使用 XPATH 仅获取特定产品的节点?

0 投票
1 回答
867 浏览

java - Xpath 使用 NodeIterator 和 java

我如何使用 org.w3c.dom.traversal.NodeIterator 在 Java 中使用 Xpath 迭代节点

我有follos代码但不起作用。

我不知道我必须在 while 条件下放什么

0 投票
3 回答
3160 浏览

java - Xerces 2.11.0 (Java) 中特定于语言环境的消息

我想在我的 JAXP 和 Xerces2 中使用特定于语言环境的错误消息。默认情况下,只有英文消息可用。

第一步是检索消息文件并将它们放入包“org/apache/xerces/impl/msg/” - 完成。通过使用Locale.setDefault (Locale.GERMANY)德语消息显示,因此这是有效的。

但我希望消息在每个实例的基础上进行不同的本地化。所以一个解析器应该返回英文消息,另一个解析器应该返回德语消息。

我用来创建 SAX2 解析器的代码是:

对于 DOM,我使用 DocumentBuilder 喜欢这样(非常简化):

我找到了类似org.apache.xerces.impl.XMLErrorReporter具有setLocale(Locale)方法的类的东西,但我没有找到获取/设置它的方法。

顺便说一句,切换到 SAX1 不是一种选择。

任何帮助表示赞赏!

0 投票
1 回答
2916 浏览

java - SAX XML 解析器 - 本地化错误消息

我目前正在开发的 Web 应用程序针对存储在服务器上的 xsd 验证用户提供的 xml 文件。问题是如果 xml 验证失败,错误消息应该是俄语的。我的解析器正在工作 - 它提供错误消息,但只有英文

它工作正常 - 错误消息是英文的。在 Xerces 2.11.0 (Java) 中阅读这篇文章Locale specific messages以及这篇文章https://www.java.net//node/699069我添加了这些行

我还将 XMLSchemaMessages_RU.properties 文件添加到 jar 中。现在我得到 NULL 指针异常。有什么想法或提示吗?提前致谢!

0 投票
2 回答
780 浏览

java - 尝试在 java 中构建 Apache Xerces 时编译错误

我正在尝试用 Java 构建 Apaches Xerxes 2.11.0 并遇到以下编译错误:

关于我可能遗漏或做错什么或更好的任何想法,有没有什么地方我可以为这个库下载一个预编译的 jar?(下载页面上可用的“二进制分发”实际上似乎只是文档和示例。)

0 投票
5 回答
41110 浏览

java - 如何使用 logback 禁用 accessExternalDTD 和 entityExpansionLimit 警告

我正在使用带有 groovy 的 logback,并在解析 xml 时出现很多警告。我知道导致此问题的 JDK1.7_u45 中的错误。

有什么方法可以关闭此日志警告,使其不再显示在 DEBUG 中?我尝试使用过滤器编写过滤器,但没有帮助。