CSF vs WCF vs BizTalk vs WWF

En esta ocasión y dado que me encuentro involucrado en un proyecto bastante interesante (sobre CSF) relacionado con web services y teniendo en cuenta que WCF está pegando fuerte y que BizTalk tampoco se queda atrás, me gustaría comentar un poco sobre CSF y hacer alguna distinción entre todas estas tecnologías.

En primer lugar, BizTalk es una herramienta servidor basada en la integración de sistemas de negocio. Hace uso de distintos Adaptadores para simplificar el trabajo y dejando así en manos de terceros parte de dicha integración. BizTalk, consigue una integración con infinidad de sistemas y productos que actualmente se encuentran entre todos nosotros, pegando fuerte; SAP, Oracle, SQL Server, Sharepoint, InfoPath, etc. [más]

En segundo lugar, WCF (Windows Communication Foundation, inicialmente, Indigo). Basado en EndPoints donde cada uno de estos esta formado por; Address, que es donde se encuentra ubicado, Binding, la manera de comunicarse y Contract, una serie de acciones que exponen aquello que ofrece el EndPoint. [más]

En tercer lugar WWF (Windows Workflow Foundation, inicialmente, WinFX). Haciendo uso de Framework 3.0 permite la realización de flujos de trabajo que son llevados a cabo mediante un facil proceso de diseño en el amigable y conocido entorno de Visual Studio 2005. [más]

Y por último CSF(Connected Services Framework). También hace uso de EndPoints de una forma muy parecida a WCF, pero su fuerte, es que, está más enfocado a las telecomunicaciones, aunque, también es cierto que en otras industrias se están llevando a cabo numerosas PoC (Pruebas de Conceptos), de echo, yo estoy currando en una de estas pruebas, :-D.
Otro punto a tener en cuenta es que CSF puede hacer uso de BizTalk para la lógica de negocio, no siendo obligatorio su uso. CSF, permite integrar diferentes Servicios(siempre que sean Web Services) a diferencia de BizTalk que intetra Sistemas (a groso modo), preguntaréis, ¡ya!, entonces, ¿Qué me aporta CSF que no pueda aportarme BizTalk?, esta es una pregunta que nos hacemos todos aquellos que comenzamos a trabajar con CSF. La diferencia está, en que BizTalk haciendo uso de WebServices podría suplir a CSF, pero sin embargo, CSF además de disponer de un servicio centralizado para la comunicación entre todos y cada uno de los Web Services, permite que toda esta comunicación sea dinámica, es decir, pueden añadirse Web Services y eliminarse de toda esta comunicación. Esta centralización está basada en sesiones a donde cada Participante (siempre Web Service) pertenece y en una Tabla de Enrutamiento (Manifiesto XML o como dígo creada dinámicamente) que es la que gestiona las acciones que cada uno de los participantes puede hacer. [más].

Todo esto, siempre haciendo uso de WS-* y fuentemente de WS-Addressing, WS-Security y WS-Eventing.

Como adelanto y finalización a este post, he de decir, que la proxima versión de CSF estará basada en WCF y .Net 3.0.

Aquí os dejo una demo que aclarará un poco más, sobre de CSF: DEMO

Más siglas para aprender, jejeje…
Saludos desde el otro lado del canal.
Juanlu

IIS7 y HttpHandlers = <System.WebServer>

 

Por fin llegó IIS 7 (bueno ya hace un tiempo :-D), pero ahora tocan unas cuantas cosillas a tener en cuenta y una de ellas es la que os quiero contar, si, los HttpHandlers, que cada día se encuentran mas en cada una de nuestras aplicaciones.

Si creamos en Visual Studio un proyecto de tipo Web Services y queremos trabajar un un HttpHandler, lo primero que hacemos es añadir algo similar a esto en el web.config:

<configuration>
   <system.web>

   …
      <httpHandlers>
         <add verb=”*” path=”CualquierCosa.ashx” type=”MyNameSpace.MiClase”/>
      </httpHandlers>

   …
   </system.web>
</configuration>

En el momento de ejecutar nuestro código ocurre lo siguiente:

Ejecuta lo siguiente:

  • %systemroot%system32inetsrvAPPCMD.EXE migrate config “Default Web Site/WebSite”

o, esto otro

  • %systemroot%system32inetsrvAPPCMD.EXE set app “Default Web Site/WebSite” /applicationPool:”Classic .NET AppPool”

La verdad, la solución a estos errores esta muy conseguida, y, hay poco que añadir.

El primer comando, añade una nueva sección al web.config y además coexiste con la inicial y se ejecutará aquella que se corresponda con la configuración establecida.

   <configuration>

   …
   <system.webServer>
      <handlers>
         <add name=”CualquierCosa.ashx_*” path=”CualquierCosa.ashx” verb=”*” type=”CualquierCosa” preCondition=”integratedMode,runtimeVersionv2.0″ />
      </handlers>
      <validation validateIntegratedModeConfiguration=”false” />
   </system.webServer>

   …

   </configuration>

En cuanto al segundo, os cuento como configurar esto mismo, pero a través de clicks que es, lo que mejor recordamos, jejeje… Es fácil, pero bueno, no siempre vamos a postear lo dificil, ¿no?

1.- Abrir el IIS7

2.- Para el Web-Site a configurar y una vez seleccionado, hacer click en “Advanced Settings…” en el menú Actions situado a la derecha.

3.- Cambiar el Application Pool, para ello, bastará con seleccionar [Behavior-Application Pool] y elegir “Classic .NET AppPool”. 

Ahora, nuestra aplicación funcionará perfectamente utilizando el modo Clásico de Pipeline.

Saludos, Juanlu

UDDI y SQL 2005

Muy buenas a todos, y en primer lugar perdon por mi temporal desaparición.

Llevo unos días aquí en WALQA (Huesca) currando en un proyecto de MCSF (Microsoft Connected Services Framework), y la verdad es que tiene buena pinta, bueno, ya os iré comentando sobre mis peripecias al respecto, por el momento veamos como instalar UDDI en SQL Server 2005.

Si alguno ha intentado instalar UDDI bajo SQL 2000, no habrá encontrado ningún, problema, :-D. Este, ocurre al intentar instalarlo en SQL 2005. Seguro que más de uno, y me incluyo, ha instalado SQL 2000 y SQL 2005 en el mismo servidor debido a este “bug”, pues bien, que sepamos que UDDI está soportado por SQL 2005 SP1 y por SP2 también, esto último os lo digo yo, :-D. Para conseguir que la instalación funcione y UDDI quede correctamente instalado seguiremos los siguientes pasos:

Agregar la entrada de Registro CSDVersion al Registro de Windows antes de intentar instalar los componentes de base de datos de Servicios UDDI. Para ello:

  1. Haga clic en Inicio, haga clic en Ejecutar, escriba regedit y a continuación, haga clic en Aceptar.
    • Si la instancia de SQL Server 2005 es la instancia predeterminada, busque y a continuación, seleccione la subclave siguiente de Registro: KEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServerCurrentVersion
    • Si la instancia de SQL Server 2005 es una instancia con nombre, busque y a continuación, seleccione la subclave siguiente de Registro: MSSQLServerCurrentVersion instance name Server de SQL de HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft
  2. En el menú Edición, elija Nuevo y a continuación, haga clic en Valor de cadena.
  3. Escriba CSDVersion y a continuación, presione ENTRAR.
  4. En el panel izquierdo, hace clic en CurrentVersion a continuación, anota el valor predeterminado CurrentVersion subclave en el panel derecho.
  5. Haga doble clic en CSDVersion.
  6. En el cuadro Información del valor, escriba el valor que anotó en paso 5 y después, haga clic en Aceptar.
  7. Instale los componentes de base de datos de Servicios UDDI.
  8. Elimine la entrada de Registro CSDVersion del registro de Windows.

Para la instalación en cluster:

Hay que añadir la clave “Cluster” y el valor “ClusterName” con el nombre de la base de datos del clúster.

Para más información: http://support.microsoft.com/kb/927230

Saludos y hasta muy pronto

Juanlu

Saludos

Hola a tod@s

Mi nombre es Juan Luis Guerrero conocido ya por alguno de vosotros como “Juanlu, El Guerre”, actualmente posteo en “El Bruno” y en “Blogspot” a partir de ahora también voy a estar por aquí, ¡vamos, que me váis a tener hasta en la sopa! jeje…

Bueno, espero poder compartir con vosotros muchas de mis experiencias y poder ayudaos en la medida de lo posible.

Gracias a Rodrigo por brindarme esta oportunidad (y también al “El Bruno” por haberme encaminado a este encuentro).

Aquí os dejo el link a mi blog: http://www.eljuanlu.blogspot.com

Saludos a todos.

Juanlu, El Guerre