Orquestacion como Servicio Web

Una funcionalidad que por diferentes motivos no habia podido trabajar era la creacion de servicios web basados en una orquestacion.  Pues bien, le he dedicado varias horas y al fin he logrado crear el servicio y probarlo.

Creamos nuestra orquestacion normal, para este caso, recibo un mensaje el cual sera el request para la ejecucion de un servicio web externo, recibida la respuesta del servicio web, enviamos el mensaje al sistema que nos invoco.

Se debe tener en cuenta que la configuracion del Puerto por el cual ingresamos a la orquestacion debe ser PUBLICO, esto para permitir el acceso de consumir la orquestacion.  Otro aspecto a tener en cuenta es el nombre de la Operacion ya que este nombre sera el nombre de la operacion que tendra nuestro servicio web para nuestro caso la llame Operation_1

El siguiente paso sera realizar la compilacion y posteriormente el deploy en un proyecto del Biztalk Administrator. En el Biztalk Administrator deberia quedar la orquestacion creada previamente y la configuracion del puerto de salida


Como se puede observar el puerto de salida definido usara el protocolo SOAP.  Para la configurar el puerto de entrada a la orquestacion usaremos el Wizard para la publicacion de servicios web

Paso 1: Definimos que nuestro servicio web sera creado a partir de una orquestacion


Paso 2: Indicamos el assembly donde esta la orquestacion


Paso 3: Indicamos el puerto por el cual vamos a enviar el mensaje de entrada a la orquestacion, puede que la orquestacion tenga varios puertos de entrada, entonces en este paso definimos el puerto por el que deseamos ingresar.  Para nuestro caso solo tenemos un puerto de entrada.


Paso 4: En este paso definimos el namespace usara el mensaje de entrada el cual TIENE que coincidir con el namespace que se definio al esquema de entrada de la orquestacion


Paso 5: Creamos el objeto Proxy el cual nos pemitira consumir nuestro servicio web, en este paso debemos tener en cuenta habilitar el acceso al usuario Anonymous del IIS y habilitar la creacion del puerto de entrada en el proyecto definido en el Biztalk Administrator (recuerden que al momento del deploy se creo tanto la orquestacion como el puerto de salida)

Con estos pasos, el Wizard habara creado el Servicio Web, lo habra publicado en nuestro IIS y habra creado el ReceivePort y ReceiveLocation en la aplicacion del Biztalk Administrator; el paso siguiente sera iniciar nuestra aplicacion en el Biztalk Administrator y construir un proyecto que nos permita consumir nuestro servicio.

Construir Aplicacion Test para nuestro Servicio Web basado en una Orquestacion

Lo primero que debemos hacer es ubicar nuestro WSDL, para esto ingresemos a la consola de administracion del IIS y buscamos nuestra aplicacion creada y la navegamos.





Aparece nuestro servicio web y nos muestra el nombre del puerto por el vamos a acceder, al hacer click en el servicio aparecera las operaciones del servicio con el nombre que le definimos en la orquestacion



Ya teniendo ubicado el WSDL del servicio, el paso siguiente sera crear nuestra aplicacion (puede ser de consola que instance el objeto Proxy y que consuma la operacion del Servicio) y referenciar el WSDL al proyecto



La clase Program se define de la siguiente manera...


Paso siguiente... depurar la aplicacion de consola...

Cualquier duda o comentario sera bienvenido, espero poder ayudar con este articulo

Comentarios

Entradas populares de este blog

Algo de Humor: Leyes de Java

MSDTC error code 0x8004D02A