Introducción:
Para los escenarios que tienen declaraciones XML y declaraciones de tipo de documento (DTD) en la carga entrante, generalmente implementamos un paso separado escribiendo un script XSL / Groovy para eliminar estas declaraciones para el esquema adecuado. En lugar de escribir este script, podemos hacer uso directamente de la función de paleta "XML Modifier" para eliminar estas declaraciones/espacios de nombres. Vamos a explorar esta función de paleta en detalle.
Script XSL para eliminar la declaración XML:
...
Configuración de XML Modifier:
Ir a transformadores de mensajes, seleccionar XML modifier:
Configuración:
Consideremos un escenario para entender el caso de uso de XML Modifier utilizando el siguiente flujo de integración de muestra:
-
Esta es una interfaz basada en temporizador que se ejecuta una vez en nuestros requisitos ad hoc.
-
He configurado la siguiente carga de muestra como el cuerpo a través del modificador de contenido.
Carga:
...
3.a) Eliminar la declaración XML de la carga.
En el procesamiento de XML Modifier, seleccionar la casilla de verificación "Eliminar declaración XML".
La salida de la Integración desplegada anteriormente se registra como un archivo adjunto utilizando el paso Groovy.
...
3.b) Eliminar las declaraciones XML y DTD de la carga.
En el procesamiento de XML Modifier, seleccionar ambas casillas de verificación para ver la siguiente salida -
Carga de salida
...
Caso de uso:
-
En escenarios con múltiples cargas entrantes (Ejemplo: cargas de más de una solicitud respuesta) necesitamos eliminar las declaraciones XML de las cargas individuales para un mapeo exitoso (mapeo múltiple con espacios de nombres) donde XML Modifier puede evitar el uso de XSLTs.
-
En SAP CPI, las DTD pueden hacer que el mensaje falle debido a las características de seguridad mejoradas. Es importante eliminar estas declaraciones, lo cual se puede hacer con esta función de paleta.
Espero que puedas beneficiarte de la función de paleta presentada en esta publicación del blog.
En caso de preguntas o comentarios, no dudes en comentar en este blog.