Autenticação Soap Header no webservice

Enviada por Felipe Oliveira 
Felipe Oliveira
Autenticação Soap Header no webservice
06 de January de 2016 às 02:04AM
Pessoal, estou tendo problema na tentativa de comunicação com o webservice do CVM, cujo XML para o método de login que utiliza o recurso SOAP HEADER é o seguinte:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<sessaoIdHeader xmlns="http://www.cvm.gov.br/webservices/">
<Guid>string</Guid>
<IdSessao>int</IdSessao>
</sessaoIdHeader>
</soap:Header>
<soap:Body>
<Login xmlns="http://www.cvm.gov.br/webservices/">
<iNrSist>int</iNrSist>
<strSenha>string</strSenha>
</Login>
</soap:Body>
</soap:Envelope>

meu código

<?php


$client = new SoapClient('http://sistemas.cvm.gov.br/webservices/Sistemas/SCW/CDocs/WsDownloadInfs.asmx?WSDL',array('trace'=>1));

$h = array("Guid"=> $Guid, "IdSessao"=> $IdSessao);

$params = array("iNrSist" => "XXXX","strSenha" => "XXXXX");

$headers= new SoapHeader('http://www.cvm.gov.br/webservices/', 'sessaoIdHeader', $h);

$client->__setSoapHeaders($headers);

$client->__soapCall("Login",$params,NULL,NULL,$h);

print ("Resposta \n".$client->__getLastRequest());

$erro=$client->getError();
echo $erro;


?>


retorna o seguinte erro:

Fatal error: Uncaught SoapFault exception: [soap:Client] Ocorreu um erro no processamento do WebMethod. Favor, entrar em contato com o suporte através do email suporte@cvm.gov.br, informando o código 'WS20160105_234048762'. in C:\xampp\htdocs\CVM\client.php:16 Stack trace: #0 C:\xampp\htdocs\CVM\client.php(16): SoapClient->__soapCall('Login', Array, NULL, NULL, Array) #1 {main} thrown in C:\xampp\htdocs\CVM\client.php on line 16

poderiam me ajudar, por favor?
Eduardo
Re: Autenticação Soap Header no webservice
05 de April de 2016 às 01:14AM
Felipe, estou com o mesmo erro.

Chegou a alguma solução?
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.