Ayer, con Visual Basic 6, construimos una clase muy sencilla con un m茅todo que se encargaba de devolver la hora del servidor. Nuestra intenci贸n es convertirla en un servicio Web para que pueda servir la hora a cualquier cliente SOAP. Y todo ello sin programar nada especial para conseguirlo.

Ahora es en donde entra en juego la magia de COM+ y de .NET Remoting. Recuerda que debes tener instalado IIS sobre Windows XP o Windows 2003 Server.

En las herramientas administrativas ejecuta la consola de administraci贸n de Servicios de componentes (o sea, COM+).Crea una nueva aplicaci贸n COM+ y agr茅gale la DLL que acabas de compilar. En las propiedades de la aplicaci贸n COM+ vete a la pesta帽a Activaci贸n y marca la opci贸n Usa SOAP. En el campo de texto inferior escribe el nombre que quieras darle al directorio de IIS en el que se publicar谩 tu servicio Web, por ejemplo, HoraWS, como en la figura.


Pulsa para ampliar

Ya est谩. A partir de ahora tienes disponible un servicio Web en ese directorio virtual de tu servidor y todo ello sin escribir una sola l铆nea de c贸digo.

驴No me crees? Pru茅balo. Escribe en tu navegador lo siguiente:

http://localhost/HoraWS/

Aparecer谩 una p谩gina que contiene un enlace al WSDL del servicio Web, es decir, a la definici贸n de 茅ste para que los clientes SOAP puedan utilizarlo sin problemas. Si pulsas este enlace ver谩s el XML que forma parte de dicha descripci贸n.

Lo que ha ocurrido es que, de forma autom谩tica, COM+ ha generado una DLL .NET que encapsula toda la funcionalidad de nuestro servidor COM y la expone聽a trav茅s de聽.NET Remoting encauzado a trav茅s de HTTP y SOAP, o sea: un servicio Web.

La p谩gina que acabas de consultar y la correspondiente DLL que he mencionado las puedes encontrar en 鈥C:\WINDOWS\system32\Com\SOAPVRoots\HoraWS鈥.聽Por supuesto puedes tocar el archivo web.config para modificar el comportamiento del componente y adecuarlo a tus necesidades, o directamente llev谩rtelo todo聽y reutilizarlo en otro lugar junto con la DLL ActiveX (si bien para esto es mejor utilizar la capacidad de exportaci贸n/importaci贸n de COM+).

Impresionante 驴verdad?

De todos modos no desconectes todav铆a de este hilo porque, en breve publicar茅 m谩s cosas interesantes sobre este asunto.

Por ejemplo, 驴Quieres saber c贸mo utilizar nuestro flamante servicio Web (y cualquier otro) con s贸lo una l铆nea de c贸digo y desde VBScript?

Pues sigue atento y pronto lo sabr谩s.

💪🏻 驴Este post te ha ayudado?, 驴has aprendido algo nuevo?
Pues NO te pido que me invites a un caf茅... Te pido algo m谩s f谩cil y mucho mejor