Considerando a necessidade de criar uma integração com o correios para calculo de preço e prazo para o frete me é dado 3 opções XML, SOAP e WSDL. Considerando que a opção REST não está disponivel (pelo menos nao encontrei nenhuma documentação) e que SOAP está depreciada (1.1) qual melhor opção e API á utilizar para realizar esta integração?
Engraçado que XML, SOAP e WSDL fazem parte da mesma estrutura, que é, para o java, JAX-WS. Basicamente, XML é o que transita, SOAP é o protocolo deste tipo de integração e WSDL é o contrato onde são definidos os modelos a serem utilizados para padronizar o sistema cliente e o sistema que disponibiliza o(s) web service(s).
É, sim, uma tecnologia mais antiga, porém, em larga utilização em várias empresas, dos mais diversos portes.
É mais complexa que REST? Com toda a certeza, porém, com um pouco de dedicação é possível criar um sistema bom, rápido e seguro.
M
Murilo_Medeiros
Obrigado pela resposta. A api JAX-WS cuida das 3 partes? Transição do XML, utilização do protocolo SOAP e o WSDL?
D
Solucao aceita
darlan_machado
A partir do WSDL você consegue criar um client para o web service que vai, através do protocolo SOAP, trafegar dados em XML.
Se você já tem o WSDL (seja o arquivo ou a URL para o mesmo), sua IDE permite criar um client básico.
M
Murilo_Medeiros
Tudo que tenho é isso e umas tags a se utilizarem.
Até achei uma API pronta no GIT, eu mando so os valores e a api cuida da formatação e envio, mas eu quero aprender integrar !
D
darlan_machado1 like
Esta estrutura que você postou são o que chamamos de payload.
O primeiro, aparenta ser o payload de request (o que é enviado) e o segundo de response (o que é recebido).
Apenas a partir deles não é possível fazer muita coisa, você precisa, realmente, é do WSDL.
Em geral, a URL de acesso a um WSDL apresenta um ?wsdl ao fim, podendo varia para ?WSDL ou para .wsdl, dependendo de como o WS foi implementado.
E por que o WSDL é tão importante?
O WSDL ou Web Service Definition Language é um XML que vai conter as informações de quais e quantos forem os serviços disponíveis, quais namespaces estão envolvidos, quais são as portas e os bindings, bem como, conterá a referência aos XSDs (Xml Schema Definition - definição da estrutura de XML a ser utilizada para construir o que será enviado ao servidor (request) e o que será retornado do servidor (response)).
D
darlan_machado
Sugiro, fortemente, dar uma boa olhada nestes tutoriais: