Analytics and Automation Software : Cisco Data Virtualization

Conversión CIS de JSON al XML cuando la estructura de la respuesta JSON no se envuelve en un elemento superior

17 Octubre 2016 - Traducción Automática
Otras Versiones: PDFpdf | Inglés (22 Agosto 2015) | Comentarios

Introducción

Este documento describe los pasos requeridos para convertir una respuesta de la notación del objeto del Javascript (JSON) recibida por el [in the Cisco Information Server (CIS)] representativo del datasource de la transferencia del estado (RESTO) en el XML si la respuesta JSON recibida por el CIS no se envuelve en un elemento superior.

Contribuido por Sadia Ali, ingeniero de Cisco TAC.

Problema

La respuesta JSON no envuelve a veces como solo documento. Por ejemplo, la respuesta JSON podía ser:

{"status":"OK",
"data":{"trends":{"55-64":[
                         {"date":"201312","value":"13.15"}
                                       ]
                          },
             "query_cost":6,
             "trends_frequency":"monthly"
          }
}

Si ésa es la respuesta, después el XML a la conversión JSON por abandono da solamente el XML como:

<?xml version="1.0" encoding="UTF-8"?><test>
<status>OK</status>

Solamente el primer snippet se vuelve dentro del estudio. Sin embargo, en el RestClient, se vuelve la respuesta completa y cs_server.log también muestra la respuesta completa.

La salida deseada XML es:

<?xml version="1.0" encoding="UTF-8"?>
<Wrapper>
<status>OK</status>
<data>
<trends>
<_55-64>
<date>201312</date>
<value>13.15</value>
</_55-64>
</trends>
<query_cost>6</query_cost>
<trends_frequency>monthly</trends_frequency>
</data>
</Wrapper>

Solución

Las fuentes de datos del RESTO extraen los datos de un servicio web en JSON o el formato XML. Si los datos se pueden extraer en el formato tabular, usted debe utilizar un transformador XSL para hacer esto. Aquí están las instrucciones básicas:

  1. Estudio de la actualización por lo menos a la corrección 6.2.3.00.22. Esto le proporciona las nuevas funciones para diseñar por el ejemplo, que hace más fácil obtener el esquema para que el procedimiento de las transformaciones de Extensible Stylesheet Language (XSLT) utilice para asociar el JSON hecho salir a la salida tabular.

  2. En el estudio, configure su tamaño del texto XML a un valor grande como 50,000. Esto es importante porque más adelante, cuando usted hace clic el diseño por el ejemplo, se rompe si el XML vuelto excede este límite de tamaño. Si usted es en una situación donde usted no puede aumentar esta configuración en el estudio, considere el uso de diversos criterios de la entrada para reducir el tamaño del XML vuelto.

  3. Usted puede hacer este paso cuando usted crea la fuente de datos, o después de la fuente de datos se crea. Cuando usted crea la fuente de datos del RESTO, marque la casilla de verificación del formato JSON.

  4. Si su estructura JSON no se envuelve en un elemento superior, el CIS puede agregar un wrapper para formatar el XML creado de la respuesta JSON correctamente en el XML legal. Si usted no sabe si la respuesta está envuelta, usted puede agregar el wrapper y evaluarlo si usted necesita esto más adelante. Esto se fija con el wrapper del campo descubierto de la respuesta JSON, que fija el nodo raíz para salida JSON > XML.



  5. Seleccione una de las operaciones agregadas en la sección de las operaciones:



  6. Haga clic el diseño por el ejemplo en la sección de los parámetros de la encabezado/del cuerpo. Si usted acaba de agregar esta operación, usted puede ser que tenga que cerrar el panel de la fuente de datos del RESTO y abrirlo de nuevo para hacer este active del botón.



  7. Elija el elemento a nivel superior de su respuesta JSON y haga clic la AUTORIZACIÓN.



  8. Dé a parámetro un nombre y haga clic la salvaguardia.



    Esto crea una definición del esquema XML fijada que aparezca en sus recursos de la fuente de datos.



  9. Esto también transforma el JSON hecho salir al XML de modo que el transformador XSL pueda procesarlo. Abra la operación y examine la estructura de la salida. Le muestra la estructura que usted utiliza en el procedimiento de XSLT.



  10. Ejecute la operación. La salida JSON transforma en el XML.



Document ID: 118611