Avalados por :

Cómo solucionar el error HTTP 401 al invocar un webservice de PI

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

Hola Expertos,

Tengo un escenario de Proxy a SOAP. Le di la URL del WSDL a un tercero.

http://serverpi.xxxx.xxxxx.com:50000/dir/wsdl?p=1_37b54521ff173dee865c82295b95bacc_portTypeBindingSe...

Están desarrollando una aplicación .net y utilizando el webservice anterior en la aplicación. Se registraron con éxito la URL del WSDL y pueden leer los métodos. El problema aquí es que al invocar el método del webservice de PI, se muestra el siguiente error.

"La solicitud falló con el estado HTTP 401: No autorizado."

Por favor, ayúdenme.

Gracias - Sridhar

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

4 Respuestas

0
Cargando...

Hola,

Para resolver esto, asegúrate de haber mantenido la contraseña correcta, que DEBE ser la misma, para todos los usuarios del servicio en XI. Puedes verificar todos los lugares donde debe mantenerse, como el Perfil de Intercambio, SU01, SLDAPICUST, etc.

Por favor, revisa la nota a continuación:

#936093 - XI 7.0: Cambio de contraseñas de usuarios del servicio XI

Asegúrate también de que el usuario tenga el rol correcto según el enlace a continuación:

http://help.sap.com/saphelp_nwpi71/helpdata/en/9f/d12940cbf2195de10000000a1550b0/frameset.htm

Y establece el valor de xiadapter.inbound.timeout.default = 600000

Puedes consultar la nota #791379 para eso.

Saludos cordiales,

Caio Cagnani

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

El error HTTP 401 no autorizado se debe a credenciales de inicio de sesión inválidas. Debes crear un usuario de servicio válido para PI y proporcionárselo a tu cliente.

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

Crea un usuario de servicio en el sistema PI, luego coloca las credenciales de inicio de sesión en la URL de punto final cuando el cliente llama.

http://<server:port>/XISOAPAdapter/MessageServlet?channel=:<Businnes System>:System_sends_SOAP_request&version=3.0&Sender.Service=<Businnes System>&Interface=<namespace> &sap-user=<USER>&sap-password=<PASS>

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

Hola,

Un punto a considerar. Si tu escenario es proxy2SOAP, ¿por qué diste el WSDL a la tercera parte??? En este tipo de escenario, consumes el WSDL de la tercera parte importándolo como definición externa.

O te equivocaste al escribir el hilo o tus conceptos están al revés.

Sea cual sea el error relacionado con el error de credenciales de usuario, para resolverlo debes mantener al USUARIO de PI que diste a la tercera parte.

Usa XML Spy o SOAP UI para probar tu escenario y asegúrate de que el usuario sea correcto.

Otra posibilidad es editar tu WSDL usando, por ejemplo, el bloc de notas y localizar la etiqueta DIRECCIÓN DE UBICACIÓN y al final de ella:

<soap:address location="http://<servidor:puerto>/XISOAPAdapter/MessageServlet?channel=:<Sistema de Negocio>:El_sistema_envía_solicitud_SOAP&amp;version=3.0&amp;Sender.Service=<Sistema de Negocio>&amp;Interface=<namespace>

Copia la ubicación y pégala en tu navegador, te pedirá autenticación y deberías obtener un mensaje como

El servlet de mensajes está en estado OK

Información de estado:

...

....

...

Gracias

Rodrigo

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?