问题标签 [woodstox]
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.
java - Woodstox StAX - 如何关闭文本内容验证?
我正在使用默认的 Woodstox EventReader 读取 XML 文件,例如:
如果输入文件碰巧在某些文本内容中有 Unicode NULL 字符,则会发生以下异常/堆栈跟踪:
我想避免验证文本内容。在 XMLInputFactory 上设置 IS_VALIDATING 并不能解决问题。
检查源代码后,看起来 BasicStreamReader 的 next() 引用“mValidateText”变量来确定是否验证。
从来源:
我似乎无法弄清楚如何在 InputFactory 或 EventReader 中更改/设置此值?也许我需要指示 InputFactory 不使用 ValidatingStreamReader,而是使用 TypedStreamReader?
web-services - 要输出的文本中的无效空字符
我正在尝试通过我的 WS 将服务器端的一些数据进程传递给客户端。
但我收到了这个错误:
将响应发送回客户端时会引发此异常。
在客户端,这是响应:
但是看着这个很难找到错误在哪里。无论如何我可以解决这个错误。
java - 使用 stax2 XMLInputFactory2 时如何转换输入流?
使用 stax2 解析大 xml 文件(500 - 800Mb),如下所示:
将其转换为特定的 csv 并有下一个问题。一些文本节点包含“” 序列。在输出文件中,它必须替换为西里尔字母“Ё”。但是当解析器发现该序列“”时,它会抛出异常:
[com.ctc.wstx.exc.WstxLazyException] com.ctc.wstx.exc.WstxParsingException:非法字符实体:扩展字符(代码 0x1 在 [row,col,system-id]
在 stax 我有同样的例外。
我可以为 xml 流阅读器设置一些转换并替换 自动解析???我可以创建中间文件,所有文件都被替换,然后解析它,但这不是一个好主意
java - 通过 Maven 的 CXF 2.7.x Woodstox 兼容性
在 CXF 的文档中,据说 2.7.x 版本要求不在 4.2.0 版本下的 Woodstox jar 在类路径中可用。
有人可以建议 Woodstox 与 CXF 一起使用的 Maven 依赖项吗?
主要问题是当我尝试使用 cxf 的客户端时,会引发异常“无法创建安全的 XMLInputFactory”。根据不同的论坛(例如),可以使用“org.apache.cxf.stax.allowInsecureParser”系统属性来解决问题,但这似乎不是一个好方法。所以maven依赖是要走的路......
提前致谢。
web-services - com.ctc.wstx.exc.WstxParsingException:文本大小限制
我正在向 CXF 网络服务发送一个大附件,但出现以下异常:
原因:javax.xml.bind.UnmarshalException - 带有链接异常:[com.ctc.wstx.exc.WstxParsingException:文本大小限制 (134217728) 在 [row,col {unknown-source}] 超出:[1,134855131] ] 在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:362) 的 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:426) ) 在 org.apache.cxf.jaxb.JAXBEncoderDecoder.doUnmarshal(JAXBEncoderDecoder.java:769) 在 org.apache.com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:339)。 cxf.jaxb.JAXBEncoderDecoder.access$100(JAXBEncoderDecoder.java:94) 在 org.apache.cxf.jaxb.JAXBEncoderDecoder$1.run(JAXBEncoderDecoder.java:797) 在 java.security.AccessController。doPrivileged(Native Method) at org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:795) ... 25 更多
这个问题似乎来自伍德斯托克斯图书馆,它说
超出文本大小限制 (134217728)
有人知道是否可以增加此限制?如果是,怎么办?
xml-parsing - 使用 Woodstox 解析简单 XML 的示例
谁能给我一个使用 Woodstox 解析器解析 XML 文件的示例?或者指向我可以查看一些示例的地方?谢谢
java - 如何在java中覆盖服务提供者
这是一个更普遍的示例问题:我正在使用 xstream 和woodstox,woodstox 在woodstox jar 注册com.ctc.wstx.stax.WstxOutputFactory 中带有javax.xml.stream.XMLOutputFactory 的服务提供程序。我想提供我自己的 javax.xml.stream.XMLOutputFactory 并且在类路径中仍然有woodstox jar。我知道我可以提供自己的系统属性 javax.xml.stream.XMLOutputFactory ,但我正试图从我们的开发运营团队中解脱出来,并使用我的 jar 或我的战争 META 中的服务文件来完成它-INF/服务文件夹。查看 javax.xml.stream.FactoryFinder 的代码如何确保我的 META-INF/services/javax.xml.stream.XMLOutputFactory 文件将是 FactoryFinder 使用的文件?
我们将 xstream 与骆驼一起使用,但找不到将工厂注入 XStreamDataFormat 的方法
java - 使用带有本地 dtd 的 woodstox 验证和解析 xml
我已经看到了多个与使用woodstox 和JAXB 解析xml 以使用XMLStreamReader
和验证模式解组相关的问题。尽管阅读它们并没有帮助。我需要的是使用本地 DTD 验证传入的 xml 并将整个内容解析为对象表示。传入的 xml 可以有一个包含 DTD 的 DOCTYPE。这需要跳过,而需要使用本地 DTD。实施应该非常快。预计 < 1ms 进行验证和解析。我可以在 5 毫秒内使用以下内容单独解析。合并验证不适用于设置架构(注释的代码行)
java - Woodstox 不报告 CDATA 事件类型
我使用woodstox 来读取xml 文件,但是当读取的元素是CDATA 时,库没有通知我。有人可以帮助我吗?这是我的代码,我想了解错误在哪里。
java - 何时使用 AALTO 以及何时使用 WoodStox 与 Jackson 进行 xml 处理
阅读此讨论
Aalto 是三者中最快的,尤其是在解析方面。它通常比 Woodstox 或 SJSXP 快 50% - 100%。一个缺点是它不处理 DTD(因此不处理外部实体;它处理预定义和字符实体)。
似乎 Aalto 是用杰克逊读/写 xml 的推荐方法。但是在jackson-dataformat-xml页面上,它建议使用 Woodstox,它已经有一段时间没有更新了。
那么最好的前进方式是什么?伍德斯托克斯还是阿尔托?