Alegría:compartir la respuesta SOAP entre destinos en el mismo canal

StackOverflow https://stackoverflow.com/questions/940138

  •  06-09-2019
  •  | 
  •  

Pregunta

Considere un escenario en el que un canal Mirth tiene uno o más destinos.En este escenario, hay 4 Destinos.

El tipo de fuente del canal es LLP Listener con un tipo de datos entrante como HL7 v2.x.

Los Destinos del canal son los siguientes:

  1. File Writer: escribe el mensaje en el disco.Realmente esto es sólo para fines de desarrollo.
  2. Javascript Writer: escribe el mensaje en la base de datos.Obtenga una clave principal.Coloque esa clave en ChannelMap para destinos futuros.
  3. Remitente SOAP: llame a un servicio web y reciba una respuesta.La llamada se desarrolla sin problemas.
  4. Escritor de Javascript: tome la respuesta del remitente SOAP anterior y escríbala en una base de datos, asociando la respuesta con la clave principal del primer destino.

Un desafío es obtener la respuesta SOAP del destino del remitente SOAP y guardarla en algún lugar para el cuarto destino.El remitente SOAP le permite enviar una respuesta SOAP a otro canal, pero lo necesito en el próximo destino.Tengo que poder recibirlo en el mismo canal.

Pregunta:¿Cómo puedo guardar/enviar los resultados XML SOAP del tercer destino al cuarto destino?

¿Fue útil?

Solución

Supongo que tus canales están sincronizados.

Supongamos que el destino del remitente SOAP del paso 3 se llama SOAPDestination, luego, en el paso 4, puede hacer esto:

var destino = respuestaseMap.get ('SoapDestination');

VAR ResponseMessage = Destination.getMessage ();

// abrir conexión a la base de datos

// Escribir ResponseMessage junto con la clave principal que almacenó en el paso 2

//cerrar la conexión a la base de datos

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top