I have the following code to serialize a XML:
private void serializeXml(
final List information, final ToXmlGenerator toXmlGenerator, final SerializerProvider provider)
throws IOException {
toXmlGenerator.writeStartObject();
toXmlGenerator.writeFieldName("data");
toXmlGenerator.writeStartArray();
for (Data data : information.getDataList()) {
toXmlGenerator.writeStartObject();
provider.defaultSerializeField("identification", data, toXmlGenerator);
toXmlGenerator.writeEndObject();
}
toXmlGenerator.writeEndArray();
toXmlGenerator.writeEndObject();
}
The thing is that I am getting this as output:
<data>
<data>
<identification>
<id>1234</id>
</identification>
</data>
<data>
<identification>
<id>ABC</id>
</identification>
</data>
</data>
And I need:
<data>
<identification>
<id>1234</id>
</identification>
<identification>
<id>ABC</id>
</identification>
</data>
The global item is being duplicated as many time the objects in the list, I only need identification ( that is a list and be repeated X times) to be inside data, I tried to set each of the value for data individually but no luck, not sure what I am missing.
The second toXmlGenerator.writeStartObject(); is creating a new object with name data