问题标签 [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.

0 投票
0 回答
1332 浏览

java - 如何使用 jackson/woodstox 漂亮地打印 xml?

我有一个 xml 输入流,其中包含一行中的所有标签,例如<xml><MyRequest><someProperty attribute="test"/></MyRequest></xml>

问题:我怎样才能最好地输出这个漂亮的打印

使用jacksonand woodstox,如果我有一个简单的 java bean 对象,情况如下:

但我没有任何 java bean,也不想创建一个。只需漂亮地打印给定的 xml 而无需转换为任何 bean。

就性能而言,我怎样才能最好地实现这一目标?

0 投票
1 回答
441 浏览

json - xmlns 命名空间属性为生成的 json 中的键值对

我有一个用例,我需要 xmlns 命名空间属性作为从 xml 生成的 json 中的键值对。但目前我无法这样做,因为命名空间被忽略了。

xml 是

生成的json

我使用fastxml jackson进行转换

如何将 xmlns 属性作为键值对包含在 json 中我需要做哪些配置才能保留 xmlns 属性?

0 投票
0 回答
3172 浏览

java - 带有杰克逊的命名空间前缀

所以我将 Jackson 2.9.3 与 Woodstox 一起使用。

我可以用这个 java 注释定义 xmlns:

导致反序列化:

这正在按预期工作。

但是如何实现这样的命名空间前缀:

所以应该在根元素中定义一个命名空间前缀:xmlns:dc = "..."

并且子标签/属性应该能够使用该前缀:< dc :title>

杰克逊/伍德斯托克斯有可能吗?

0 投票
2 回答
889 浏览

java - 编写 Xml 失败。尽管它在 Maven 中,但找不到库

我正在生成一个 Xml 文件。这适用于开发,但不适用于我的测试服务器。生成它的代码如下所示:

我有当前版本的woodstox作为maven中的依赖项:

jackson-core我在那里也有对and jackson-dataformat-xml(and jackson-datatype-jsr310)的依赖。

这在开发中运行良好,但是当我将代码部署为 war 文件并使用测试机器上的码头服务器启动它时,会引发此错误:

我验证了war文件中确实包含库。我发现它在ROOT.war\WEB-INF\lib\woodstox-core-5.0.3.jar

所以这让我不知道为什么会出现这个错误。对我来说,似乎没有使用woodstox,因此java回退到Stax1,尽管woodstox在存档中。

有什么建议可能在这里发生或我可能做错了什么?

0 投票
0 回答
88 浏览

java - 如何使用 Woodstox writeRaw WITH 缩进重用部分 XML 文档?

我正在写一个相当大的文档,其中有很多重复的元素。我不想每次都重新创建这些元素,而是将它们存储在内存中并打印出来。

在这个主题上找到了其他 SO 线程,答案是使用 Woodstox/Stax2 和 writeRaw() 函数。

这对我来说很好,但我也希望得到的流能够很好地打印出来。

讨论该主题的SO 线程都是关于使用 IndentingXMLStreamWriter - 但是,WoodStox 没有这样的类,所以我没有可以使用的 writeRaw 方法。

我想避免在内存中读取整个字符串,但我无法让它工作。

指点赞赏!

0 投票
1 回答
39 浏览

java - 是否可以自定义 Woodstox 错误消息

我想在 GUI 中使用 Woodstox 进行 XML-Parsing/Writing,它应该向用户显示在 XML-Parsing/Writing 期间发生的错误消息。

Woodstox 是否提供了一种方法来自定义在解析/写入期间发生的所有错误消息。我不想向用户展示我使用woodstox,我也不想在错误消息中显示Java 类或Java 特定错误消息等内部内容。

例如:

  • 通过 ResourceBundle 或 Properties-File 加载错误消息
  • 提供错误代码以允许消费者为每个错误代码提供自定义错误消息。

Woodstox 是否提供类似的功能,如何使用?

0 投票
2 回答
751 浏览

java - Woodstox 通过 SimpleXML 属性限制 - 如何设置它们?

我一直试图让 SimpleXML 读取一个巨大的 XML 并遇到属性大小限制。

javax.xml.stream.XMLStreamException:在 com.ctc.wstx.sr.StreamScanner.constructLimitViolation(StreamScanner.java:2470) 处超出了最大属性大小限制 (524288)

我试过使用系统属性,但它似乎没有捡起它。

-Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory -Dcom.ctc.wstx.maxAttributeSize=10000000

如何强制 Woodstox 使用新限制?

0 投票
1 回答
424 浏览

java - 使用woodstox解析xml时避免命名空间

我正在尝试使用woodstox解析器解析xml文件并删除名称空间和前缀(xml包含嵌套元素,每个元素都包含每个级别的名称空间)

下面是我用来解析的代码。我得到的输入与我通过的相同。请帮助解决问题

0 投票
2 回答
521 浏览

java - 使用 Woodstox 解析 XML 时保持实体不变

我正在使用 Woodstox 处理&gt;在其中一个节点的值中包含一些实体(最明显的是 )的 XML。举一个极端的例子,它是这样的:

<parent>&nbsp; &lt; &nbsp; &gt; &amp; &quot; &apos; &nbsp;</parent>

我已经为WstxInputFactory ( IS_REPLACING_ENTITY_REFERENCES, P_TREAT_CHAR_REFS_AS_ENTS, P_CUSTOM_INTERNAL_ENTITIES...) 和WstxOutputFactory尝试了很多不同的配置选项,但无论我尝试什么,输出始终是这样的:

<parent>nbsp; &lt; nbsp; > &amp; " ' nbsp;</parent>

&gt;被转换为>&lt;保持不变,&nbsp;失去&......)

我正在使用创建的XMLEventReader读取 XML

XMLEventReader reader = wstxInputFactory.createXMLEventReader(new StringReader(fulltext));

配置WstxInputFactory之后。

有没有办法将 Woodstox 配置为忽略所有实体并完全按照输入字符串中的内容输出文本?

0 投票
1 回答
261 浏览

java - ClassNotFoundException 与 javadoc doclet 的自定义 xml 序列化程序

tl;博士; 使用的类加载器XmlOutputFactory抱怨它找不到 Woodstox,即使它可以被 doclet 自己的类加载器找到

如果在我们已将 xml 工厂设置为使用 Woodstox 序列化程序的示例项目中运行 javadoc 目标,则使用的类加载器XmlOutputFactory会抱怨它找不到文件,即使它可以在 doclet 中找到。

所以虽然我们JacksonWriter 清楚地找到了类(见输出),但似乎XmlOutputFactory没有,表明它有某种其他类加载器看不到提供的类路径。

您可以看到使用的完整类路径target/site/testapidocs/options

如何重现