java - 我可以配置 cxf 以使用特定的 XML 解析器吗?

标签 java xml web-services cxf woodstox

有没有办法指定 cxf 使用哪个 XML 解析器?是通过 cfx.xml 文件还是以编程方式?

我们的应用程序在其类路径上有 Woodstox 解析器,cxf 似乎默认使用它。然而,Woodstox 实现似乎截断了 SOAP 数据包中的大型 Base64 编码字节数组。

从类路径中删除 Woodstox 可以消除这个截断问题,但现在这不是一个选项,因为我们应用程序的其他部分也依赖于 Woodstox。

如果我可以简单地告诉 cxf 使用另一个 XML 解析器,那将是理想的。这可能吗?

最佳答案

尝试设置以下系统属性:

javax.xml.stream.XMLInputFactory=com.sun.xml.internal.stream.XMLInputFactoryImpl

参见 XMLInputFactory#newInstance()有关如何配置 XMLInputFactory 的详细信息

关于java - 我可以配置 cxf 以使用特定的 XML 解析器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2208504/

相关文章:

java - Android 应用程序无法正确渲染阿拉伯语字体

java - JTabbedPane - ArrayIndexOutOfBoundsException

python - 如何检查 xml 中两个元素的属性值是否相同

c - 使用 xsltproc 将 XML 转为 postscript

java - 在java中使用axis调用webservice

java - 使用带有 Java Servlet 的 Web 服务

java - sqlite for android,如何更新表

c# - 使用 C# 去除宏的 Excel 文件

.net - 使用 WCF 格式化 json 响应

java - JSwing 拆分 Pane 不会显示