O WSDL NO WEBSERVICE É OBRIGATÓRIO ?

MARCOS 08/09/2016 14:05:13
#466631
Boa tarde,colegas!
Tenho pouca experiência com WebService.
Mesmo assim,consegui criar um projeto VB.NET, no qual eu consumo
um WebService de terceiros. Funciona muito bem.

O procedimento:

Para consumir o WebService, eu :

- No Menu principal,eu Adicionei uma referência de serviço
- Forneci o endereço URL do aquivo wsdl
- Depois que adicionei a referência do serviço,bastou eu instanciar a classe e métodos disponíveis e usar em meu projeto

O caso:

Tenho agora,que consumir um outro WebService de outra empresa. Mas a mesma, me forneceu somente um endereço URL,
sem a extensão wsdl. Tentei adicionar como serviço assim mesmo e é claro o Visual Studio não aceitou.

Obs: é claro que coloquei a extensão [Ô]wsdl[Ô] no fim da URL.Mas,mesmo assim foi recusada como serviço pela IDE.

A dúvida:

- No Visual Studio (VB.NET), o único modo de se consumir um WebService de terceiros ,é necessáriamente tendo o endereço URL do arquivo wsdl ?


Agradeço qualquer orientação
KERPLUNK 08/09/2016 16:16:10
#466634
Resposta escolhida
Vamos lá, às explicações:
O WSDL não é um arquivo, ele é um [Ô]espelho[Ô] de todos os objetos e métodos contidos no WebService.A melhor maneira de se imaginar um WebService SOAP como é o seu caso, é imaginar uma API, uma DLL, que contenha métodos e objetos. A única diferença é que essa API/DLL está em um computador remoto. A pergunta [Ô]O WSDL é obrigatório, nem sequer faz sentido[Ô], mas mesmo assim, entendi o que você quer dizer. Quando fazemos o processo de adicionar referência de serviço, apontando para um WSDL, o que o Visual Studio faz, é ler o conteúdo do WSDL e criar um clone dos objetos e métodos dele na sua aplicação para que você possa interagir com esse WebService usando objetos exatamente iguais. Então, o WSDL é e não é obrigatório. Explico: Você ainda pode interagir com o WebService sem possuir uma cópia local dos objetos que ele trabalha, mas fica mais difícil, apesar de não impossível. Acredito que você não está sabendo [Ô]interpretar[Ô] o que o seu fornecedor passou e é até possível que não seja um WebService SOAP, mas sim uma WebAPI, que tanto falo aqui no fórum.

Você pode passar o endereço para que eu dê uma olhada?
MARCOS 08/09/2016 17:18:34
#466645
Boa tarde,Kerplunk !
Entendi exatamente o que quiz dizer.
De fato, quando na primeira ocasião eu usei o VB.Net, a empresa me forneceu o endereço URL do wsdl e eu
procedi do modo como você descreveu. Tudo funciona muito bem, até hoje!

Mas, agora esta outra empresa não me forneceu este endereço por isto fiquei confuso. ( Me forneceram somente uma Url , como a de um site )

Obs:

a.) Encontrei alguns exemplos na Internet, nos quais se faz o consumo do WebService , a partir de um endereço com extenção .asmx
(Seja como for,não me foi fornecido isto também).

Na sua opinião, pode se dizer que, se for de fato um WebService ,cabe a empresa tercerizada fornecer o endereço URL do wsdl ou ao menos
o .asmx correspondente ao WebService ?
KERPLUNK 08/09/2016 17:28:42
#466646
Cada caso é um caso, eu não sou ditador de regras e não tenho como dizer categoricamente como cada coisa deve ser feita. Gostaria mesmo de ver a URL para poder dizer do que se trata. Se quiser, pode passar em privativo.
Tópico encerrado , respostas não são mais permitidas