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