gpt4 book ai didi

java - JIBX绑定(bind)松散的xml结构

转载 作者:行者123 更新时间:2023-12-01 04:14:42 25 4
gpt4 key购买 nike

我正在使用 org.jibx.runtime.impl.UnmarshallingContext.unmarshalDocument(java.io.Reader rdr) 类来解码我的 xml。

这是我的有效绑定(bind) map 。

<?xml version="1.0" encoding="UTF-8"?>

<binding xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<mapping name="md" class="com.mycompany.metadata.JiBXMetadata" ordered="false">
<value name="alice" field="aliceStr" style="element" usage="optional"/>
<value name="bob" field="bobStr" style="element" usage="optional"/>
<value name="carol" field="carolStr" style="element" usage="optional"/>
</mapping>
</binding>

因此,如果 xml 具有任意顺序的任何节点 alice、bob 或 carol,那么它就可以正常工作。如果 xml 中缺少任何节点,它仍然可以正常工作。但是如果 xml 中有一个额外的节点(比如 steve),那么我会得到一个 JiBXException。

有什么方法可以让解码器忽略不在绑定(bind)映射中的任何节点吗?

最佳答案

添加灵活选项可能会有所帮助。您可以尝试将灵活的属性添加到您的映射中吗?

<binding xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<mapping name="md" class="com.mycompany.metadata.JiBXMetadata" ordered="false">
<value name="alice" field="aliceStr" style="element" usage="optional" flexible="true"/>
<value name="bob" field="bobStr" style="element" usage="optional" flexible="true"/>
<value name="carol" field="carolStr" style="element" usage="optional" flexible="true"/>
</mapping>

关于java - JIBX绑定(bind)松散的xml结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19546309/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com