gomesrod 21 de mar. de 2012
Minha sugestão é usar uma ferramenta para geração do client do webservice.
Por exemplo o Axis 2
Funciona assim, a partir da descrição do serviço (WSDL) são geradas classes para chamada a webservice, junto com todos os objetos de entrada ou retorno dos serviços.
Seu código então pode chamar o webservice como se fosse um objeto comum.
gomesrod 21 de mar. de 2012
Ah! Aqui tem um exemplo:
http://www.guj.com.br/articles/180
No tutorial ele implementa o webservice do lado Server e também o Client, você usa o que precisar
roodrigo.p 21 de mar. de 2012
Mas a mensagem soap eu ja consigo, oque falta é só eu conseguir manipula-la e pegar os dados que quero dela
:S
?
roodrigo.p 26 de mar. de 2012
Segue a msg soap que o Web Service me retorna:
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:executarSolicitacaoResponse
xmlns:ns1="http://service.datasus.org/" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<executarSolicitacaoReturn href="#id0" />
</ns1:executarSolicitacaoResponse>
<multiRef xmlns:ns2="http://service.datasus.org/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" id="id0"
soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:AutorizacaoDTO">
<arrMedicamentoDTO soapenc:arrayType="ns2:MedicamentoDTO[1]"
xsi:type="soapenc:Array">
<arrMedicamentoDTO href="#id1" />
</arrMedicamentoDTO>
<coSolicitacaoFarmacia xsi:type="xsd:string">1</coSolicitacaoFarmacia>
<descMensagemErro xsi:type="xsd:string">Solicitação
pré-autorizada.</descMensagemErro>
<inAutorizacaoSolicitacao xsi:type="xsd:string">00S</inAutorizacaoSolicitacao>
<noPessoa xsi:type="xsd:string">Nome - CPF/CNPJ: [telefone removido]</noPessoa>
<nuAutorizacao xsi:type="xsd:string">952.296.783.812.020</nuAutorizacao>
</multiRef>
<multiRef xmlns:ns3="http://service.datasus.org/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" id="id1"
soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns3:MedicamentoDTO">
<coCodigoBarra xsi:type="xsd:string">7896004726847</coCodigoBarra>
<dsUnidApresentacao xsi:type="xsd:string">COMPRIMIDO</dsUnidApresentacao>
<inAutorizacaoEstorno xsi:nil="true" xsi:type="xsd:string" />
<inAutorizacaoMedicamento xsi:type="xsd:string">00SM -
Medicamento pré-autorizado.</inAutorizacaoMedicamento>
<qtAutorizada xsi:type="xsd:double">4.0</qtAutorizada>
<qtDevolvida xsi:type="xsd:double">0.0</qtDevolvida>
<qtEstornada xsi:type="xsd:double">0.0</qtEstornada>
<qtPrescrita xsi:type="xsd:double">1.0</qtPrescrita>
<qtSolicitada xsi:type="xsd:double">4.0</qtSolicitada>
<statusTransacao xsi:nil="true" xsi:type="xsd:string" />
<vlPrecoSubsidiadoMS xsi:type="xsd:double">12.6</vlPrecoSubsidiadoMS>
<vlPrecoSubsidiadoPaciente xsi:type="xsd:double">1.4</vlPrecoSubsidiadoPaciente>
<vlPrecoSubsidiadoPacientePosEstorno
xsi:type="xsd:double">0.0</vlPrecoSubsidiadoPacientePosEstorno>
<vlPrecoVenda xsi:type="xsd:double">14.0</vlPrecoVenda>
<vlrSubsidiadoMSPosEstorno xsi:type="xsd:double">0.0</vlrSubsidiadoMSPosEstorno>
<vlrTotalVendaPosEstorno xsi:type="xsd:double">0.0</vlrTotalVendaPosEstorno>
</multiRef>
</soapenv:Body>
</soapenv:Envelope>
Quero pegar esses dados, como fazer isso?
Alguem??? :S