Tengo problemas para unmarshall xml anidado a continuación. ¿Alguien puede avisar si me falta algo?
body
etiqueta puede contener cualquier obj anotado Jaxb.
¿Debo crear un adaptador personalizado para ordenar/desasignar dicho xml?Jaxb complex xml unmarshall
XML de entrada
<?xml version="1.0" encoding="UTF-8"?>
<serviceRq xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="serviceRq">
<body>
<createRq>
<id>1234</id>
</createRq>
</body>
</serviceRq>
Mis clases anotado JAXB son:
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "serviceRq")
public class ServiceRq{
private Object body;
<!-- getters and setters omitted-->
}
Aquí, el cuerpo puede ser cualquier objeto jaxb anotada, en este caso su CreateRq.
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "createRq")
public class CreateRq{
private String id;
<!-- getters and setters omitted-->
}
Estoy buscando una forma genérica de admitir cualquier objeto anotado Jaxb en el cuerpo de la entrada xml.
Gracias que trabajaron. Solo quería agregar que tuve que agregar CreateRq a la inicialización de JAXBContext para que funcione. Gracias por su ayuda – BSingh
Si establecemos lax en false (comportamiento predeterminado), ¿creará un objeto dom a partir del contenido xml y no intentará asignarlo a un objeto conocido? –