使用 Jackson 解析 XML 时如何忽略特定节点

我想知道在使用 Jackson ML 模块解析 XML 时是否可以忽略一个或多个节点。


我希望能够解析这个 XML


<bundle>

  <id value="myBundleId"/>

  <meta>

    <profile value="http://myurl/profile1" />

    <profile value="http://myurl/profile2" />

    <tag>

      <system value="https://myurl/system" />

      <code value="myAppCode"/>

    </tag>

  </meta>

  <type value="message" />

</bundle>

进入这个 POJO 对象


import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;

import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;


import lombok.Data;


@Data

public class Bundle {


    @JacksonXmlElementWrapper(localName = "id")

    @JacksonXmlProperty(isAttribute = true, localName = "value")

    private String id;


    @JacksonXmlElementWrapper(localName = "type")

    @JacksonXmlProperty(isAttribute = true, localName = "value")

    private String type;

}

现在它不起作用,因为我认为注释 @JacksonXmlElementWrapper 仅适用于列表。


它还给了我以下错误消息:


java.lang.IllegalArgumentException:属性“value”的 setter 定义冲突


幕布斯6054654
浏览 496回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java