I use FasterXML Jackson to convert a POJO to XML but I want the children of the parent tag in the list to have a different name. How can I do it?
ORDEN:
@JacksonXmlRootElement(localName = "eOrden")
public class Orden {
@JacksonXmlProperty(localName = "General")
private General general = new General();
@JacksonXmlProperty(localName = "Domicilio")
private List<Domicilio> eDomicilio = new ArrayList<>();
@JacksonXmlProperty(localName = "eTarjetasLinea")
private List<ETarjetasLinea> tarjetasLinea = new ArrayList<>();
@JacksonXmlProperty(localName = "ElementosADSL")
private ElementosADSL elementosADSL;
@JacksonXmlProperty(localName = "Red")
private Red red;
}
DOMICILIO:
@JacksonXmlRootElement(localName = "eDomicilio")
public class Domicilio {
@JacksonXmlProperty(localName = "TipoDomicilio")
private String tipoDomicilio;
@JacksonXmlProperty(localName = "Central")
private String identificadorCalle;
@JacksonXmlProperty(localName = "IdentificadorCalle")
private String calle;
@JacksonXmlProperty(localName = "Calle")
private String numero;
@JacksonXmlProperty(localName = "Colonia")
private String colonia;
@JacksonXmlProperty(localName = "CP")
private String cp;
}
Cuando pruebo con esto arroja lo siguiente:
<eOrden xmlns="">
<General />
<Domicilio >
<Domicilio>
<TipoDomicilio />
<Central />
<IdentificadorCalle />
<Calle />
<Colonia />
<CP />
</Domicilio>
</Domicilio>
<eTarjetasLinea></eTarjetasLinea>
<ElementosADSL />
<Red />
</eOrden>
Pero requiero que el tag hijo de Domicilio sea eDomicilio:
<eOrden xmlns="">
<General />
<Domicilio >
<eDomicilio>
<TipoDomicilio />
<Central />
<IdentificadorCalle />
<Calle />
<Colonia />
<CP />
</eDomicilio>
</Domicilio>
<eTarjetasLinea></eTarjetasLinea>
<ElementosADSL />
<Red />
</eOrden>
Any ideas on how to change it? Greetings!