Compartir a través de


Cómo habilitar los puntos de extensibilidad de WCF con los adaptadores de WCF

Habilite tres puntos de extensibilidad de WCF (extensión de comportamiento, extensión de elemento de enlace y extensión de enlace) con los adaptadores de WCF-Custom y WCF-CustomIsolated. Para ello, primero instale los ensamblados que implementan los puntos de extensibilidad de WCF en la caché global de ensamblados (GAC), modifique el archivo machine.config en los equipos y, a continuación, configure la WCF-Custom o el adaptador de WCF-CustomIsolated mediante la consola de administración de BizTalk Server.

Consulta Extensión de WCF para obtener más información sobre los puntos de extensibilidad de WCF.

Prerrequisitos

Inicie sesión con una cuenta que sea miembro del grupo Administradores de BizTalk Server. Los permisos necesarios para implementar y administrar una aplicación de BizTalk proporcionan más información.

Instala ensamblados que implementen un punto de extensibilidad de WCF en la GAC

  1. Copie los ensamblados que implementan el punto de extensibilidad de WCF a una carpeta en su equipo local.

  2. Copie los ensamblados que usa el punto de extensibilidad de WCF, si los hay, en una carpeta del equipo local.

  3. Inicie la Terminal de Visual Studio.

  4. Escriba el siguiente comando:

    gacutil.exe /if "<ruta de acceso al archivo .dll del ensamblado>"

  5. Esto instala el ensamblado en la GAC, reemplazando cualquier ensamblado existente con el mismo nombre.

  6. En el indicador de comandos de Visual Studio, repita los pasos 4 y 5 para todos los ensamblados que copió en los pasos 1 y 2 de este procedimiento.

  7. Si tiene varios equipos en tiempo de ejecución de BizTalk Server y equipos de administración, repita los pasos del 1 al 6 de este procedimiento en todos los equipos.

    Nota:

    Para habilitar los puntos de extensibilidad de WCF para los adaptadores WCF, la instancia de host de BizTalk que ejecuta el adaptador debe poder cargar en tiempo de ejecución los ensamblados en los que se implementan los puntos de extensibilidad de WCF.

Configurar el archivo machine.config para una extensión de enlace WCF

  1. En un símbolo del sistema, vaya al %FrameworkDir%\v4.X.XXXXX\CONFIG, y a continuación, abra el archivo machine.config con el Bloc de notas.

  2. En el Bloc de notas, si el archivo machine.config no tiene los elementos <system.serverModel>\<extensions>, agregue esos elementos dentro del elemento <configuration> del archivo machine.config, y luego agregue el elemento <bindingExtensions> para una extensión de enlace WCF dentro de los elementos <system.serverModel>\<extensions>. Por ejemplo, para habilitar una extensión de enlace personalizada, netHttpBinding, agregue el código siguiente dentro del <elemento de configuración> del archivo machine.config:

    <system.serviceModel>  
      <extensions>  
        <bindingExtensions>  
          <add name="netHttpBinding" type="Microsoft.Samples.Channels.NetHttpBindingCollectionElement, NetHttpBinding, Version=3.0.0.0, Culture=neutral, PublicKeyToken=5b637b51c4aaa2a8" />  
        </bindingExtensions>        
      </extensions>  
    </system.serviceModel>  
    

    Nota:

    • Puede encontrar la información de los ensamblados que se van a registrar mediante el comando gacutil /lr<assembly_name>.
    • Vea bindingExtensions en este elemento.
  3. En el Bloc de notas, guarde el archivo machine.config.

  4. Si tiene varios equipos en tiempo de ejecución de BizTalk Server y equipos de administración, repita los pasos del 1 al 3 de este procedimiento en todos los equipos.

    Nota:

    Debe repetir estos pasos en todos los equipos de la infraestructura de WCF para procesar el punto de extensibilidad de WCF para la instancia de host de BizTalk y la consola de administración de BizTalk Server.

Configurar una extensión de enlace WCF mediante la consola de administración de BizTalk

  1. Abra Administración de BizTalk Server.

    Nota:

    Si la consola de administración de BizTalk Server ya está abierta, reinicie la consola de administración de BizTalk Server.

  2. Si usa el adaptador de WCF-Custom, en la consola de administración de BizTalk Server, expanda Configuración de la plataforma, expanda Instancias de host y, a continuación, reinicie la instancia de host de BizTalk que ejecuta el adaptador.

  3. Si usa el adaptador de WCF-CustomIsolated, en la consola de administración de IIS, reinicie el grupo de aplicaciones asociado a la ubicación de recepción de WCF.

  4. Si desea configurar una ubicación de recepción para usar un punto de extensibilidad de WCF, en la consola de administración de BizTalk Server, expanda Grupo de BizTalk, expanda <Aplicación> de BizTalk, expanda Ubicaciones de recepción y, a continuación, en el panel derecho, haga doble clic en <Ubicación> de recepción.

    • En el cuadro de diálogo Propiedades de ubicación de recepción , en la lista desplegable Tipo , seleccione WCF-Custom oWCF-CustomIsolated según el adaptador WCF que quiera usar y, a continuación, haga clic en Configurar.
  5. Si desea configurar un puerto de envío para usar un punto de extensibilidad de WCF, en la consola de administración de BizTalk Server, expanda Grupo de BizTalk, expanda <aplicación de BizTalk>, expanda Puertos de envío, y luego, en el panel derecho, haga doble clic en <puerto de envío>.

    • En el cuadro de diálogo Propiedades de puerto de envío , en la lista desplegable Tipo , seleccione WCF-Custom y, a continuación, haga clic en Configurar.
  6. En el cuadro de diálogo propiedades de transporte, en la pestaña Enlace , seleccione la extensión de enlace y, a continuación, configure el resto de las opciones de transporte.

  7. En la consola de administración de BizTalk Server, cierre todos los cuadros de diálogo abiertos haciendo clic en los botones Aceptar y asegúrese de que no aparezcan mensajes de error ni registros de eventos erróneos.

Configurar el archivo machine.config para una extensión de elemento de enlace WCF

  1. En un símbolo del sistema, vaya a la carpeta %FrameworkDir%\v4.X.XXXXX\CONFIG y, a continuación, abra el archivo machine.config con el Bloc de notas.

  2. En el Bloc de notas, si el archivo machine.config no tiene los elementos <system.serverModel>\<extensions>, agregue esos elementos dentro del elemento <configuration> del archivo machine.config. Luego, incluya el elemento <bindingElementExtensions> para una extensión de elemento de enlace WCF dentro de los elementos <system.serverModel>\<extensions>. Por ejemplo, para habilitar una extensión de elemento de vinculación personalizado, droppingInterceptor, agregue el siguiente código dentro del <configuration> elemento del archivo machine.config:

    <system.serviceModel>  
      <extensions>  
        <bindingElementExtensions>  
          <add name="droppingInterceptor" type="Microsoft.ServiceModel.Samples.DroppingServerElement, MessageInterceptor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=098514eef14aa34a"/>  
        </bindingElementExtensions>  
      </extensions>  
    </system.serviceModel>  
    

    Nota:

    • Puede encontrar la información de los ensamblados que se van a registrar mediante el comando gacutil /lr<assembly_name>.
    • Vea bindingElementExtensions en este elemento.
  3. En el Bloc de notas, guarde el archivo machine.config.

  4. Si tiene varios equipos en tiempo de ejecución de BizTalk Server y equipos de administración, repita los pasos del 1 al 3 de este procedimiento en todos los equipos.

    Nota:

    Debe repetir estos pasos en todos los equipos de la infraestructura de WCF para procesar el punto de extensibilidad de WCF para la instancia de host de BizTalk y la consola de administración de BizTalk Server.

Configurar una extensión de elemento de enlace WCF mediante la consola de administración de BizTalk

  1. Abra Administración de BizTalk Server.

    Nota:

    Si la consola de administración de BizTalk Server ya está abierta, reinicie la consola de administración de BizTalk Server.

  2. Si usa el adaptador de WCF-Custom, en la consola de administración de BizTalk Server, expanda Configuración de la plataforma, expanda Instancias de host y, a continuación, reinicie la instancia de host de BizTalk que ejecuta el adaptador.

  3. Si usa el adaptador de WCF-CustomIsolated, en la consola de administración de IIS, reinicie el grupo de aplicaciones asociado a la ubicación de recepción de WCF.

  4. Si desea configurar una ubicación de recepción para usar un punto de extensibilidad de WCF, en la consola de administración de BizTalk Server, expanda Grupo de BizTalk, expanda <Aplicación> de BizTalk, expanda Ubicaciones de recepción y, a continuación, en el panel derecho, haga doble clic en <Ubicación> de recepción.

    • En el cuadro de diálogo Propiedades de ubicación de recepción , en la lista desplegable Tipo , seleccione WCF-Custom oWCF-CustomIsolated según el adaptador WCF que quiera usar y, a continuación, haga clic en Configurar.
  5. Si desea configurar un puerto de envío para usar un punto de extensibilidad de WCF, en la consola de administración de BizTalk Server, expanda Grupo de BizTalk, expanda <aplicación de BizTalk>, expanda Puertos de envío, y luego, en el panel derecho, haga doble clic en <puerto de envío>.

    • En el cuadro de diálogo Propiedades de puerto de envío , en la lista desplegable Tipo , seleccione WCF-Custom y, a continuación, haga clic en Configurar.
  6. En el cuadro de diálogo propiedades de transporte, en la pestaña Enlace , en la lista desplegable Tipo de enlace, seleccione customBinding.

  7. En el cuadro de diálogo de propiedades de transporte, en la pestaña Enlace, haga clic con el botón derecho en el área del cliente de la lista Enlace y, a continuación, haga clic en Agregar extensión.

  8. En el cuadro de diálogo Seleccionar extensión de elemento de enlace, seleccione una extensión de elemento de enlace y, a continuación, haga clic en Aceptar.

  9. En el cuadro de diálogo propiedades de transporte, en la pestaña Enlace , ajuste el orden de los elementos de enlace agregados en la lista Enlace en función del tipo de la extensión del elemento de enlace que agregó en el paso anterior como se indica a continuación:

    • En la lista Enlace , haga clic con el botón derecho en una extensión de elemento de enlace y, a continuación, haga clic en Mover extensión hacia arriba o Bajar extensión. La extensión de elemento de enlace más baja de la lista Enlace corresponde al componente inferior de la pila del canal. El elemento de enlace más alto de la lista Enlace corresponde al componente superior de la pila de comunicación.

      Nota:

      Consulte Enlaces personalizados para obtener más información sobre el orden específico de los elementos de enlace para el enlace personalizado.

  10. En el cuadro de diálogo propiedades de transporte, configure el resto de las opciones de transporte.

  11. En la consola de administración de BizTalk Server, cierre todos los cuadros de diálogo abiertos haciendo clic en los botones Aceptar y asegúrese de que no aparezcan mensajes de error ni registros de eventos erróneos.

Configurar el archivo machine.config para una extensión de comportamiento de WCF

  1. En un símbolo del sistema, vaya a la carpeta %FrameworkDir%\v4.X.XXXXX\CONFIG y, a continuación, abra el archivo machine.config con el Bloc de notas.

  2. En el Bloc de notas, si el archivo machine.config no tiene los elementos <system.serverModel>\<extensions>, agregue esos elementos dentro del elemento <configuration> del archivo machine.config, y luego agregue el elemento <behaviorExtensions> para una extensión de comportamiento WCF dentro de los elementos <system.serverModel>\<extensions>. Por ejemplo, para habilitar una extensión de comportamiento personalizado, schemaValidator, agregue el código siguiente dentro del <elemento de configuración> del archivo machine.config:

    <system.serviceModel>  
      <extensions>  
        <behaviorExtensions>  
          <add name="schemaValidator" type="Microsoft.ServiceModel.Samples.SchemaValidationBehaviorExtensionElement, MessageInspectors, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ad307e213604f592"/>  
        </behaviorExtensions>  
      </extensions>  
    </system.serviceModel>  
    

    Nota:

    • Puede encontrar la información de los ensamblados que se van a registrar mediante el comando gacutil /lr<assembly_name>.
    • Vea behaviorExtensions en este elemento.
  3. En el Bloc de notas, guarde el archivo machine.config.

  4. Si tiene varios equipos en tiempo de ejecución de BizTalk Server y equipos de administración, repita los pasos del 1 al 3 de este procedimiento en todos los equipos.

    Nota:

    Debe repetir estos pasos en todos los equipos de la infraestructura de WCF para procesar el punto de extensibilidad de WCF para la instancia de host de BizTalk y la consola de administración de BizTalk Server.

Configurar una extensión de comportamiento de WCF mediante la consola de administración de BizTalk

  1. Abra Administración de BizTalk Server.

    Nota:

    Si la consola de administración de BizTalk Server ya está abierta, reinicie la consola de administración de BizTalk Server.

  2. Si usa el adaptador de WCF-Custom, en la consola de administración de BizTalk Server, expanda Configuración de la plataforma, expanda Instancias de host y, a continuación, reinicie la instancia de host de BizTalk que ejecuta el adaptador.

  3. Si usa el adaptador de WCF-CustomIsolated, en la consola de administración de IIS, reinicie el grupo de aplicaciones asociado a la ubicación de recepción de WCF.

  4. Si desea configurar una ubicación de recepción para usar un punto de extensibilidad de WCF, en la consola de administración de BizTalk, expanda Grupo de BizTalk, expanda <Aplicación> de BizTalk, Expanda Ubicaciones de recepción y, a continuación, en el panel derecho, haga doble clic en <Ubicación> de recepción.

    • En el cuadro de diálogo Propiedades de ubicación de recepción , en la lista desplegable Tipo , seleccione WCF-Custom oWCF-CustomIsolated según el adaptador WCF que quiera usar y, a continuación, haga clic en Configurar.
  5. Si desea configurar un puerto de envío para usar un punto de extensión de WCF, en la consola de administración de BizTalk, expanda Grupo de BizTalk, expanda <Aplicación de BizTalk>, expanda Puertos de envío, y, a continuación, en el panel derecho, haga doble clic en <Puerto de envío>.

    • En el cuadro de diálogo Propiedades de puerto de envío , en la lista desplegable Tipo , seleccione WCF-Custom y, a continuación, haga clic en Configurar.
  6. En el cuadro de diálogo propiedades de transporte, en la pestaña Comportamiento , haga clic con el botón derecho en ServiceBehavior o EndpointBehavior en función del tipo de la extensión de comportamiento y, a continuación, en el cuadro de diálogo Seleccionar extensión de comportamiento, seleccione la extensión de comportamiento y, a continuación, haga clic en Aceptar.

  7. En el cuadro de diálogo propiedades de transporte, configure el resto de las opciones de transporte.

  8. En la consola de administración de BizTalk Server, cierre todos los cuadros de diálogo abiertos haciendo clic en los botones Aceptar y asegúrese de que no aparezcan mensajes de error ni registros de eventos erróneos.

Configuración de una ubicación de recepción de WCF-Custom con un certificado SSL

  • Si una ubicación de recepción WCF-Custom utiliza el controlador HTTP en modo kernel (HTTP.sys), como el elemento de enlace httpsTransport, para las comunicaciones de Capa de Sockets Seguros (SSL), la ubicación de recepción debe tener un certificado registrado para cada socket (combinación de dirección IP/puerto). Use la herramienta HttpCfg.exe para enlazar un certificado SSL a un puerto del equipo. Para obtener más información, vea Cómo: Configurar un puerto con un certificado SSL.