4. Transformar datos complejos XML
En la clase de hoy vamos a aprender cómo transformar datos complejos XML utilizando DataWeave. En la clase anterior, Transformar datos complejos de Arrays, vimos como transformar Arrays partiendo del formato JSON y JAVA, en esta clase nos enfocaremos en XML, puesto que no funcionan igual.
Estructuras de datos con Arrays en XML
Los modelos de datos están estructurados en 3 tipos, objetos, Arrays y literales simples. Nos vamos a centrar en los tipos de datos Array.
Cuando nos llega un Array de datos en JSON o JAVA, para transformarlo en formato XML, es necesario tener en cuenta lo siguientes puntos:
- En XML siempre debe existir un objeto padre. A continuación, podéis observar un ejemplo con el objeto Persona.
- Para cada elemento del Array se debe definir un objeto Persona, como en el ejemplo anterior.
En JSON o JAVA, no será necesario crear ese objeto. Por ejemplo, en JSON quedaría de la forma que vimos en la clase anterior. Os pongo un pequeño recordatorio.
Si os fijáis, no existe el objeto persona, ni usuario, ni nada que englobe los atributos, ya que en JSON no es obligatorio.
En la clase de hoy veremos como transformar correctamente, teniendo en cuenta este detalle, en XML.
Error Coerce de datos
Durante vuestra vida como desarrolladores Mulesoft, es posible que os encontréis muchísimas veces este error, de hecho yo me lo sigo encontrando constantemente.
El error es el siguiente:
En este caso, nos indica que no puede transformar un tipo de dato Array en un String. En el caso de la clase de hoy, nos encontraremos el mensaje «Cannot coerce Array to Object».
Si queréis seguir aprendiendo y realizar ejemplos prácticos, os recomiendo que realicéis la clase de hoy, es bastante clave para aprender a transformar datos complejos a XML.
Sin más, Transformar datos complejos en XML ¡dentro vídeo!
Clases del curso
- 1. Transformar datos en DataWeave (19:32)
- 2. Transformar datos JSON, JAVA y XML (16:06)
- 3. Transformar datos complejos de Arrays (15:20)
- 4. Transformar datos complejos en XML (10:17)
- 5. Definir variables y funciones (18:53)
- 6. Coerce y formatear datos (12:02)
- 7. Tipos de datos personalizados (9:28)
- 8. Funciones de DataWeave (13:05)
- 9. Llamar a Flows desde DataWeave (20:52)
- Punto de control