Problemas com webservice com HTTPRIO
11/05/2017
0
Boa tarde,
Estou desenvolvendo um software (Delphi 2010) para averbação eletrônica de carga, porém o meu envelope SOAP está sendo enviado diferentemente do que é o exigido.
Estou usando o componente HTTPRIO.
Minha requisição SOAP está saindo desta forma:
Porém ela deve ser enviada da seguinte forma:
Utilizei o evento HTTPRIOBeforeExecute e estou trocando a requisição para a qual eu preciso, porém está ocasionando o erro:
[i]error in msg parsing:
XML error parsing SOAP payload on line 12: Invalid document end[/i]
Detalhe meu envelope só tem 11 linhas
Estou transformando através de uma stringlist, não sei se deveria utilizar alguma outra função. Como sou novo em webservice, não estou sabendo o que fazer. Alguém poderia me dar uma dica?
Estou desenvolvendo um software (Delphi 2010) para averbação eletrônica de carga, porém o meu envelope SOAP está sendo enviado diferentemente do que é o exigido.
Estou usando o componente HTTPRIO.
Minha requisição SOAP está saindo desta forma:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <NS1:averbaCTe20 xmlns:NS1="urn:ATMWebSvr"> <usuario xsi:type="xsd:string">usuario</usuario> <senha xsi:type="xsd:string">senha</senha> <codatm xsi:type="xsd:string">99999</codatm> <xmlCTe xsi:type="xsd:string">[CDATA[]]</xmlCTe> </NS1:averbaCTe20> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
Porém ela deve ser enviada da seguinte forma:
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:ATMWebSvr"> <soapenv:Header/> <soapenv:Body> <urn:averbaCTe20 soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <usuario xsi:type="xsd:string">?</usuario> <senha xsi:type="xsd:string">?</senha> <codatm xsi:type="xsd:string">?</codatm> <xmlCTe xsi:type="xsd:string">?</xmlCTe> </urn:averbaCTe20> </soapenv:Body> </soapenv:Envelope>
Utilizei o evento HTTPRIOBeforeExecute e estou trocando a requisição para a qual eu preciso, porém está ocasionando o erro:
[i]error in msg parsing:
XML error parsing SOAP payload on line 12: Invalid document end[/i]
Detalhe meu envelope só tem 11 linhas
Estou transformando através de uma stringlist, não sei se deveria utilizar alguma outra função. Como sou novo em webservice, não estou sabendo o que fazer. Alguém poderia me dar uma dica?
Rodrigo Boito
Curtir tópico
+ 0
Responder
Posts
Clique aqui para fazer login e interagir na Comunidade :)