CDATA en WS respons...
 

[Resuelto] CDATA en WS response [Solucionado]  

  RSS

(@gonzalo_mendez_alarcon)
Miembro Eminente
Registrado: hace 4 años
Respuestas: 12
8 febrero, 2016 13:07  

Hola,

Estoy intentando sacar la información contenida en un CDATA de un mensaje devuelto por un WS Sender.

Cuando se almacena la respuesta del WS no hay manera de ver el CDATA (no lo veo en los mensajes de canal, almacenando en un mapa o almacenando en mi BBDD.

Los "Data types" del destino son Raw en entrada y salida.

¿Alguna idea de cómo sacar esa información del mensaje?


(@fjcarrasco)
Miembro Moderator
Registrado: hace 6 años
Respuestas: 29
8 febrero, 2016 13:16  

Hola, Gonzalo, eso me suena a bug, ¿qué versión de Mirth Connect estás utilizando?

Un saludo.


(@gonzalo_mendez_alarcon)
Miembro Eminente
Registrado: hace 4 años
Respuestas: 12
8 febrero, 2016 13:19  

Pues la versión 3.3.0.7801

Ya me dices si puedo solucionar con otra versión.

Gracias.


(@fjcarrasco)
Miembro Moderator
Registrado: hace 6 años
Respuestas: 29
8 febrero, 2016 15:23  

Hola, Gonzalo:

He probado con la versión de Mirth Connect 3.3.1.7856 y parece que, aunque se omiten los CDATA como tales, su contenido sí que se incluye, tanto en los envíos como en las respuestas.

En mi ejemplo, la respuesta del servicio web es la siguiente:

<![CDATA[<recibido><enviado><wbr />toma</enviado></recibido>]]>

Y lo que recibo es:

&lt;recibido&gt;&lt;<wbr />enviado&gt;toma&lt;/enviado&<wbr />gt;&lt;/recibido&gt;

¿Puedes ponerme un ejemplo de qué es lo que tú recibes y de qué es lo que deberías recibir en tu caso?

Un saludo.


(@gonzalo_mendez_alarcon)
Miembro Eminente
Registrado: hace 4 años
Respuestas: 12
8 febrero, 2016 17:11  

Este es el mensaje que "recibe" Mirth:

<SOAP-ENV:Fault xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<faultcode>OSB-103</faultcode>
<faultstring>Error de validació XSD</faultstring>
<detail/>
</SOAP-ENV:Fault>

Y éste el que se recibe por SoapUI:

<soapenv:Fault>
<faultcode>OSB-103</faultcode>
<faultstring>Error de validació XSD</faultstring>
<detail><![CDATA[<ctx:details xmlns:ctx="http://www.bea.com/wli/sb/context"><ns0:ValidationFailureDetail xmlns:ns0="http://www.bea.com/wli/sb/stages/transform/config"><ns0:message>string length (0) is less than minLength facet (1) for st in namespace urn:hl7-org:v3</ns0:message><ns0:xmlLocation/></ns0:ValidationFailureDetail></ctx:details>]]></detail>
</soapenv:Fault>

Gracias!


(@fjcarrasco)
Miembro Moderator
Registrado: hace 6 años
Respuestas: 29
15 febrero, 2016 16:04  

Hola, Gonzalo, es cierto que ocurre este problema, al menos en tu versión de Mirth Connect.

Se me ocurre que puedes cambiar el tipo de conector de Web Service Sender a HTTP Sender. De esta forma, debería llegarte la respuesta tal cual y no omitirse el CDATA.

Ya nos cuentas qué tal.

Un saludo.


(@gonzalo_mendez_alarcon)
Miembro Eminente
Registrado: hace 4 años
Respuestas: 12
16 febrero, 2016 11:38  

Buenas Fran,

Perfecto, con el HTTP Sender funciona perfecto.

Un truco más de Mirth 🙂

Gracias!


(@fjcarrasco)
Miembro Moderator
Registrado: hace 6 años
Respuestas: 29
16 febrero, 2016 19:34  

Perfecto, Gonzalo, me alegro de que esto solucione tu problema.

De nada, para eso estamos. 😉


Share:
caduceusadminForum