Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia, estou com muita dificuldade para enviar um XML de Request para o SoupClient.
XML DE REQUEST - ORIGINAL DA CONSULTA
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice.consulta.spcjava.spcbrasil.org/">
<soapenv:Header/>
<soapenv:Body>
<web:filtro>
<codigo-produto>325</codigo-produto>
<tipo-consumidor>F</tipo-consumidor>
<documento-consumidor>00752477714</documento-consumidor>
</web:filtro>
</soapenv:Body>
</soapenv:Envelope>
NO PROGRAMA SOUPUI FUNCIONA BEM, ME TRAZ O RETORNO DE XML CORRETO.
AGORA NO PHP NÃO CONSIGO DE NENHUMA MANEIRA.
TENTEI ASSIM, DEU ERRO
<?php
$webserviceURL = "https://treina.spc.org.br/spc/remoting/ws/consulta/consultaWebService?wsdl";
$client = new SoapClient($webserviceURL, array("login"=>"XXXX","password"=>"XXXX"));
$xml = '<?xml version=""1.0"" encoding=""utf-8""?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservice.consulta.spcjava.spcbrasil.org/">
<soapenv:Header/>
<soapenv:Body>
<web:filtro>
<codigo-produto>325</codigo-produto>
<tipo-consumidor>F</tipo-consumidor>
<documento-consumidor>00752477714</documento-consumidor>
</web:filtro>
</soapenv:Body>
</soapenv:Envelope>';
echo "<pre>";
print_r($client->consultar($xml));
echo "</pre>";
?>
TENTEI ASSIM, DEU ERRO TAMBEM
<?php
$webserviceURL = "https://treina.spc.org.br/spc/remoting/ws/consulta/consultaWebService?wsdl";
$client = new SoapClient($webserviceURL, array("login"=>"XXX","password"=>"XXX"));
$function = 'Consultar';
$s1 = '325';
$s2 = 'F';
$s3 = '00752477714';
$arguments= array('ns1:filtro' => array('codigo-produto' => ''.$s1 .'','tipo-consumidor' => ''.$s2 .'','documento-consumidor' => ''.$s3 .''));
$result = $client->__soapCall($function, $arguments);
$txt = SimpleXML_Load_String($result);
echo 'Response: ';
print_r($arguments);
?>Eu consegui aqui, fiz um ajuste na variável.
>
Em 08/11/2017 at 17:53, GuilhermeDias disse:
Eu consegui aqui, fiz um ajuste na variável.
Boa tarde!
Já que resolveu poderia postar como ficou no modo certo, estou com dúvida na mesma coisa.
De uma olhada no link abaixo:
Nenhuma das chamadas que você realizou está correta, nem o uso do retorno. Teste com o SoapUI que lhe trará uma chamada assertiva.
Poste, também, as mensagens de erro.