3.28.2017

Trabajando JSON en BizTalk Server 2016 – Parte 1

Uno de las nuevas características en BizTalk 2016 es la adición de componentes para pipeline para manejar el formato JSON(codificar/decodificar) tanto para consumir como para enviar mensajes JSON. En este post vamos a ver como trabajar el formato JSON en BizTalk Server 2016 a nivel de pipelines.

Ejemplo

Inicialmente, vamos a crear una pequeña orquestación que recibe un documento JSON y lo decodifica a un documento XML para direccionarlo a otro puerto en formato XML. Por facilidad del ejemplo, la orquestación funcionara con adaptadores FILE tanto para iniciar la orquestación como para enviar la respuesta.

Primero vamos a crear un proyecto que solo va a contener todos los pipelines (los que vamos a ir usando en esta serie de posts) y creamos un pipeline para decodificar un mensaje JSON a XML y otro para codificar un mensaje XML en un mensaje JSON. El primer pipeline se puede ver en la siguiente figura.

image

En el siguiente paso procedemos a publicar el aplicativo BizTalk para que estos pipelines queden disponibles para otras aplicaciones. Seguidamente procedemos a crear una aplicación BizTalk y agregamos como referencia el aplicativo recientemente publicado.

Ahora procedemos a crear un puerto de recibo donde vamos a configurar el pipeline para recibir el documento JSON tal y como se ve en la siguiente figura.

image

El primer paso es configurar el adaptador FILE(1), seguidamente seleccionamos el pipeline que creamos en el proyecto común y agregamos como referencia(2),  luego vía el botón elipse procedemos a configurar el pipeline(3). En este caso debemos definir el nodo raíz y seguidamente proceder a crear un namespace ya que el documento XML así lo va a requerir(4).

Ahora procedemos a crear un puerto de envío que tiene la particularidad de que utiliza un filtro para rutear el mensaje recibido JSON, solo que vamos a usar el pipeline passthru para grabarlo en el directorio tal y como viene decodificado.

image

Luego de este paso ya estamos listos, arrancamos el aplicativo y procedemos a realizar la prueba con el siguiente archivo.

image

La salida resultante será en formato XML tal y como se ve en la siguiente figura.

image

No hay comentarios: