Avalados por :

Cómo solucionar errores de tipo de contenido en llamadas SOAP: guía paso a paso

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 18 Vistas
0
Cargando...

Hola a todos,

Actualmente estoy solucionando un problema que tenemos con un servicio web hacia un cliente que ha sido configurado. Estamos utilizando XI para hacer que el servicio web externo esté disponible para nuestra red interna (por lo que la interfaz es un escenario síncrono SOAP a SOAP). Inicialmente tuvimos algunos problemas con nuestro certificado de cliente que no funcionaba, pero pudimos resolver esto utilizando XISOAPAdapterBean certLookupMode = 3 en la pestaña Module.

Ahora estamos enfrentando un problema con el tipo de contenido. Recibo el siguiente error antes de que se intente la llamada SOAP (justo después de que entra en el adaptador).

SOAP: la llamada falló: java.io.IOException: tipo de contenido no válido para SOAP: TEXT/HTML; HTTP 415 No se puede procesar el mensaje porque el tipo de contenido text/xml; charset=utf-8 no era el tipo esperado application/soap+xml; charset=utf-8.

Pude avanzar un paso más al marcar la opción 'No utilizar sobre' en el canal. Cuando esto está marcado, recibo el siguiente error. Sin embargo, la carga útil no tiene un sobre SOAP en ella ya, así que no creo que esto sea lo correcto a hacer.

SOAP: el mensaje de respuesta contiene un error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 415 No se puede procesar el mensaje porque el tipo de contenido text/xml;charset=utf-8 no era el tipo esperado application/soap+xml; charset=utf-8.

Finalmente, intenté usar MessageTransformBean Transform.ContentType = application/soap+xml;charset=utf-8 para forzar el tipo de contenido a lo 'esperado', y obtengo el siguiente error.

SOAP: el mensaje de respuesta contiene un error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 400 Solicitud incorrecta.

Entonces, ahora estoy sin ideas. ¿Alguien puede arrojar algo de luz sobre cómo resolver o solucionar este problema?

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Este mensaje de error significa que el XML no comienza con <?, sino que tiene un <? más tarde (por lo que el analizador asume que esto es una estructura de proceso).

En otras palabras: Tu carga útil tiene un espacio en blanco al principio.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

¡Gracias Stefan!

Hemos confirmado con nuestro socio que están utilizando WCF, lo que nos dijeron significa inherentemente que es SOAP 1.2. Ahora hemos implementado el framework Axis y estamos intentando establecer la conexión usando esto. En el siguiente error:

MP: Se capturó una excepción con la causa org.xml.sax.SAXException: Las instrucciones de procesamiento no están permitidas dentro de los mensajes SOAP

Inspeccionamos el mensaje y no hemos encontrado ninguna instrucción de procesamiento (que sería '<?' + instrucción + '?>' y aparentemente el <?xml version='1.0' ?> no cuenta). ¿Alguna idea para este problema?

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Tu servicio web solicita SOAP 1.2, el cual no es compatible con el adaptador SOAP de PI.

Podrías utilizar el framework Axis para crear un mensaje SOAP 1.2.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola Michael,

Por favor, házmelo saber cómo resolviste el problema.

También estamos recibiendo el error de solicitud HTTP 400 Bad en el canal receptor de SOAP.

Tu ayuda será muy apreciada.

Saludos,

SV

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?