Logo UGIdotNET

Accedere ad un WEB Service attraverso VB6

Innanzitutto è necessario capire il funzionamento dell'accesso ad un WEB Service, in modo generale. Normalmente un WEB Service mette a disposizione i suoi metodi ( per intenderci quelli con attributo ) attraverso un protocollo applicativo che si chiama SOAP ( acronimo che sta per Simple Object Accsss Protocol ). Attraverso questo protocollo, sono descritte le informazioni necessarie sui tipi di dati in ingresso ed in uscita di ogni funzione, in modo che il WEB Service ed il "Client" si trovino d'accordo sui messaggi da scambiarsi. Sembra quindi ovvio immaginare che sia necessario - anche per un'applicazione VB6 che intende comunicare e fruire un WEB Service - "parlare" il protocollo SOAP. A riguardo è quindi necessario innanzitutto scaricare il ToolKit della Microsoft che le nuove funzionalità necessarie al vecchio ambiente di sviluppo Visual Studio.

Tale ToolKit ( con precisione SOAPToolKit 3.0 ) è scaricabile gratuitamente all'indirizzo:

http://msdn.microsoft.com/downloads/default.asp?URL=/downloads/sample.asp?url=/MSDN-FILES/027/001/948/msdncompositedoc.xml

Una volta scaricato va installato, ovviamente. A questo punto comincia il nostro lavoro! Supponiamo di avere un'applicazione in VB6 a cui vogliamo aggiungere la capacità di puntare ad un WEB Service che sarebbe raggiungibile ( se fossimo all'interno di .NET ) all'indirizzo http://server/WebService/MioService.asmx.

Per prima cosa è necessario aggiungere "le nuove potenzialità" SOAP alla nostra applicazione VB6. Per fare questo è sufficiente aggiungere un riferimento alla libreria Microsoft SOAP Type Lybrary v3.0. Quindi nel codice sarà sufficiente creare un oggetto di tipo SOAP Client:

/*  CODE 1  */
Dim
 ObjSoap As MSSOAPLib30.SoapClient30
set  ObjSoap = New MSSOAPLib30.SoapClient30

Call ObjSoap.MSSoapInit("http://server/WebService/MioService.asmx?WSDL")
ObjSoap.ClientProperty("ServerHTTPRequest") = True

Da questo momento ObjSoap è l'istanza del nostro WEB Service ed è possibile richiamarne i metodi e leggerne i valori di ritorno. Ovviamente essendo un collegamento "dinamico", non ci viene in aiuto il completamento automatico: dobbiamo conoscere il nome e i parametri dei metodi che richiamiamo

Autore: Alessandro Sbenaglia
Data: 24 ottobre 2002
Ultimo aggiornamento: 23 luglio 2004
Categorie: 

© 2001 User Group Italiano UGIdotNET. Tutti i diritti riservati. Note legali. - Partita IVA 01927050185