Serialisieren von Java-Liste, um XML-Daten mithilfe von Jackson XML-mapper

Hallo brauche ich zum erstellen einer XML-Datei aus JAVA mit Jackson-dataformat XMLMapper.
Das XML soll wie

<Customer>
  <id>1</id>
  <name>Mighty Pulpo</name>
    <addresses>
      <city>austin</city>
      <state>TX</state>
    </addresses>
    <addresses>
      <city>Hong Kong</city>
      <state>Hong Kong</state>
    </addresses>
</Customer>

Aber ich bekomme es immer gerne mit einem zusätzlichen "< Adressen> < /Adressen> - tag".

<Customer>
  <id>1</id>
  <name>Mighty Pulpo</name>
<addresses>
    <addresses>
      <city>austin</city>
      <state>TX</state>
    </addresses>
    <addresses>
      <city>Hong Kong</city>
      <state>Hong Kong</state>
    </addresses>
<addresses>
</Customer>

Ich benutze folgenden code zum erstellen von XML -

JaxbAnnotationModule jaxbAnnotationModule = new JaxbAnnotationModule();
XmlMapper mapper = new XmlMapper();
mapper.enable(SerializationFeature.INDENT_OUTPUT);
mapper.registerModule(jaxbAnnotationModule);
mapper.registerModule(new GuavaModule());
String xml = mapper.writeValueAsString(customer);
System.out.println(xml);

Bitte kann jemand mir helfen? Wie kann ich entfernen Sie die extra-tag bitte. Habe ich versucht, @XmlElement, aber es hilft nicht helfen. TIA!!

  • Sie sind unter Liste von Adressen(Mehrere) in der customer-Klasse. also muss der übergeordnete Knoten-Adressen und seine Kind-Knoten-Adresse.
  • Thx Manoj, aber ich will nicht jede elterliche Knoten. Kann man das irgendwie weglassen der elterlichen Knoten?
  • Ich bekam die Antwort - müssen Nur auf die Verwendung von @JacksonXmlElementWrapper(useWrapping = false) Thx für verbringen Zeit es zu Lesen.
Schreibe einen Kommentar