No tengo relativamente experiencia con SOAP. Estoy tratando de trabajar con un servicio web para un cliente que usa el modo WSDL. Tengo problemas para pasar los parámetros con el método y hacer que aparezcan los parámetros que aparecen en la solicitud según sea necesario. Estoy usando la clase estándar de jabón php.Parámetros del método PHP-Soap Pass
necesito mi solicitud SOAP a estructurarse como la siguiente:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://hostserver/">
<SOAP-ENV:Body>
<ns1:DoLogin>
<ns1:request>
<ns1:Session>
<ns1:SessionId>00000000-0000-0000-0000-000000000000</ns1:SessionId>
</ns1:Session>
<ns1:UserCredential>
<ns1:UserName>username</ns1:UserName>
<ns1:Password>password</ns1:Password>
<ns1:ApplicationID>00000000-0000-0000-0000-000000000000</ns1:ApplicationID>
<ns1:ClientID>00000000-0000-0000-0000-000000000000</ns1:ClientID>
<ns1:ClientVersion>V1.0</ns1:ClientVersion>
</ns1:UserCredential>
</ns1:request>
</ns1:DoLogin>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
en PHP que llama a la función de este modo:
$client->DoLogin($args);
Y la solicitud termina así:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://hostserver/"><SOAP-ENV:Body><ns1:DoLogin/></SOAP-ENV:Body></SOAP-ENV:Envelope>
No importa cómo paso los argumentos (objetos únicos, matriz, objeto de clase) No puedo obtener la solicitud para tener la estructura como eso.
¿Alguien me puede ayudar? Estoy seguro de que va a ser algo bastante simple.
¿Has encontrado una respuesta? – darpet