问题标签 [xerces]

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 投票
1 回答
1339 浏览

java - XMLEntityScanner.peekChar 中的 ArrayIndexOutOfBoundsException 从 HttpRequest 读取 XML

我正在从我的 servlet doPost() 中的 HttpServletRequest 读取 XML 数据,并将 Reader 从 req.getReader() 传递给 JAXB 解组器。我尝试了几种不同的输入 XML,但我总是得到这个异常。

这只发生在我的 Live Web 服务器上,而不是本地开发机器上。无论输入是什么(尽管我只尝试了大约 90k 个输入),堆栈跟踪的消息部分始终显示为“8192”。我查看了 XMLEntityScanner.java 第 491 行,可以看到正在读取的缓冲区,并且该缓冲区确实是一个数组。对我来说,使用从零开始的索引 8192 无法读取 8k 缓冲区是有道理的,所以这一定是一个错误 - 但原因是什么,我该怎么办?


我问这个已经通过大量的侦探工作找到了答案。我想为下一个可怜的家伙省去麻烦,因为 Apache 已经拒绝修复它。

0 投票
3 回答
5722 浏览

java - 修复 XML 文件中的错误编码

我们的供应商之一有时会发送标记为 UTF-8 编码文档但包含未包含在 UTF-8 字符集中的字符的 XML 提要。这会导致解析器在遇到这些字符时抛出异常并停止构建 DOM 对象:

抛出以下异常:

有没有办法尽早“捕获”这些问题并避免异常(即从流中查找和删除这些字符)?我正在寻找的是错误编码文档的“尽力而为”类型的后备。正确的解决方案显然是从源头上解决问题并确保只交付正确的文档,但是当不可能时,有什么好的方法呢?

0 投票
1 回答
2075 浏览

c++ - 如何创建一个空的 DOMElement

我在我的项目中使用 Xerces-c,并且想创建一个DOMElement而不需要创建一个全新的DOMDocument. 这样的事情可能吗?

0 投票
5 回答
897 浏览

java - é is not correctly parsed

My application will read xml from urlconnection. The xml encoding is ISO-8859-1, it contains é character. I use xerces saxparser to parse received xml content. However, é can not be parsed correctly while running application under lunix OS. Everything works fine in Windows. Could you guys please give me some hints? Thanks a lot

0 投票
4 回答
2981 浏览

java - 如何在将使用 getResourceAsStream() 加载的 XML 文件中包含 DTD?

我有一个使用以下 DOCTYPE 定义 DTD 的 xml 文件('videofaq.xml')

我在 Servlet 初始化时从类路径(实际上是从 JAR)加载文件,使用:

正确找到了 XML,但对于同一包中的 DTD,Xerces 给了我一个 FileNotFoundException,并显示 Tomcat 启动脚本的路径,并在末尾附加了“videofaq.dtd”。如果有的话,我可以将哪些提示传递给 Xerces 以使其正确加载 DTD?

0 投票
1 回答
717 浏览

java - 为什么 Grails 需要 Xerces?

我们在 grails 项目中遇到了不同 XML 库冲突的问题。解决方案是从 $GRAILS_HOME/lib 中删除 xercesImpl.jar。没有它,Grails 也能很好地工作。所以我的问题是,为什么 grails-distribution 中的 xerces-library 首先是?

0 投票
1 回答
200 浏览

xml - 如何处理 xslt 脚本代码示例?

我在使用记事本、UltraEdit 或发布到网络的帮助文本创建的 XSLT 脚本中遇到致命错误http://www.w3.org/2006/xqt-errors#XPTY0004 。这些工具没有显示任何奇怪的字符,但是除非我手动编辑输入,否则脚本会中断,因此它们都在一行上(通常需要重新创建每个空白字符)。剪切'n'粘贴代码示例很乏味。(XERCES?) 解析器是否解释了这些工具中未显示的一些非法字符?

我尝试添加<?xml version="1.0" encoding="UTF-8"?>为脚本的第一行,但这没有帮助。任何可以解释为什么 XML 解析器无法通过http://www.w3.org/2005/xqt-errors#XPTY0004的人(尝试链接)。

0 投票
2 回答
4078 浏览

java - 使用 Xerces 解析 XML 文档时是否可以获得当前行号?

我有一个使用 xerces API 解析 XML 文档的 java 程序。

我的解析类扩展了 org.apache.xerces.parsers.XMLDocumentParser,重载了 startElement、endElement、characters 方法。

由于是手工编写的复杂 XML 文档(主要是某种配置元素),经典的 xsd 或 dtd 验证是不够的,我必须向用户返回 XML 文档无效。

但是我无法实现的一件事是在错误消息中添加有关当前正在解析的行号(以及为什么不列号)的信息以及发生错误的位置。

我认为这是可能的,因为当 XML 文档不是 XML 有效时解析器生成的异常 (org.apache.xerces.xni.parser.XMLParseException) 包含这些信息。

0 投票
1 回答
549 浏览

c++ - 如何在 MS Visual Studio 调试器中查看 DOMString(来自 apache xerces 库)?

我正在研究使用Apache Xerces-C库的代码(遗留代码)。我试图DOMString在 Microsoft Visual Studio 调试器中查看(和其他相关 DOM 对象)的值,但徒劳无功。我试过以下

1)我在autoexp.dat文件中添加了以下内容:

结果:相同的行为,它显示了内存位置

2) 我尝试使用“ ”语法快速查看DOMString变量var,su

我在Apache Xerces General 邮件列表中提出了这个问题。

如果有人遇到这个问题并有解决方法,那对我会有很大帮助。

0 投票
2 回答
569 浏览

c++ - Xerces/Xalan:UNC 路径作为文档函数的参数?

我正在使用 Xerces-C 2.5 和 Xalan-C 1.8 转换 XML 文档。XSL 包含一个“文档”函数,它引用网络上的一个文件。不幸的是,我无法通过 HTTP 访问此文件。我只有UNC路径。

Xerces 拒绝解析引用的文档,因为WinSockNetAccessor::makeNew在 Xerces 中被调用,因为“文件”协议只被本地文件接受。WinSockNetAccessor::makeNew仅针对 HTTP 实现,抛出异常并忽略文件。

有没有办法欺骗 Xerces,以便在不编写我自己的解析器或操作 Xerces 的情况下接受 unc 路径作为本地文件或任何其他已知的解决方法?