Cómo habilitar los puntos de extensibilidad 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 debe instalar los ensamblados que implementan los puntos de extensibilidad de WCF en la caché global de ensamblados (GAC), luego modificar el archivo machine.config en los equipos y, a continuación, configurar 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.
Requisitos previos
Inicie sesión con una cuenta que sea miembro del grupo administradores de BizTalk Server. Permisos necesarios para implementar y administrar una aplicación de BizTalk proporciona más información.
Instalación de ensamblados que implementan un punto de extensibilidad de WCF en la GAC
Copie los ensamblados que implementan el punto de extensibilidad WCF a una carpeta en su equipo local.
Copie los ensamblados que utiliza el punto de extensibilidad WCF a una carpeta en su equipo local.
Inicie el símbolo del sistema de Visual Studio.
Escriba el siguiente comando:
gacutil.exe /if "<ruta de acceso al archivo> .dll de ensamblado"
Se instalará el ensamblado en la GAC, sobrescribiendo cualquier ensamblado existente con el mismo nombre.
En el símbolo del sistema de Visual Studio, repita los pasos 4 y 5 en todos los ensamblados que copió en los pasos 1 y 2 de este procedimiento.
Si tiene varios equipos en tiempo de ejecución BizTalk Server y equipos de administración, repita los pasos del 1 al 6 de este procedimiento en todos los equipos.
Nota
Para activar los puntos de extensibilidad WCF para los adaptadores de WCF, la instancia de host de BizTalk que ejecuta el adaptador debe poder cargar los ensambles en tiempo de ejecución en donde se implementan los puntos de extensibilidad WCF.
Configurar el archivo machine.config para una extensión de enlace WCF
En un símbolo del sistema, vaya a %FrameworkDir%\v4. La carpeta X.XXXXX\CONFIG y, a continuación, abra el archivo machine.config mediante el Bloc de notas.
En el Bloc de notas, si el archivo machine.config no tiene los <elementos system.serverModel>\<extensions> , agregue esos elementos dentro del <elemento de configuración> del archivo machine.config y 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.
Guarde el archivo machine.config en el Bloc de notas.
Si dispone de 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
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.
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 reinicie la instancia de host de BizTalk que ejecuta el adaptador.
Si utiliza el adaptador de WCF-CustomIsolated, en la consola de administración de IIS, reinicie el grupo de aplicación asociado a la ubicación de recepción WCF.
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óny, 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 o WCF-CustomIsolated según el adaptador WCF que quiera usar y, a continuación, haga clic en Configurar.
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íoy, a continuación, en el panel derecho, haga doble clic en <Enviar puerto>.
- 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.
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 para el transporte.
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 y registros de eventos erróneos.
Configurar el archivo machine.config para una extensión de elemento de enlace WCF
En un símbolo del sistema, vaya a %FrameworkDir%\v4. La carpeta X.XXXXX\CONFIG y, a continuación, abra el archivo machine.config mediante el Bloc de notas.
En el Bloc de notas, si el archivo machine.config no tiene los <elementos system.serverModel>\<extensions> , agregue esos elementos dentro del <elemento de configuración> del archivo machine.config y agregue 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 enlace personalizado, quitarInterceptor, agregue el código siguiente dentro del <elemento de configuración> 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.
Guarde el archivo machine.config en el Bloc de notas.
Si dispone de 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
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.
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 reinicie la instancia de host de BizTalk que ejecuta el adaptador.
Si utiliza el adaptador de WCF-CustomIsolated, en la consola de administración de IIS, reinicie el grupo de aplicación asociado a la ubicación de recepción WCF.
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óny, 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 o WCF-CustomIsolated según el adaptador WCF que quiera usar y, a continuación, haga clic en Configurar.
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íoy, a continuación, en el panel derecho, haga doble clic en <Enviar puerto>.
- 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.
En el cuadro de diálogo Propiedades de transporte, en la pestaña Enlace , en la lista desplegable Tipo de enlace, seleccione customBinding.
En el cuadro de diálogo Propiedades de transporte, en la pestaña Enlace , haga clic con el botón derecho en el área cliente de la lista Enlace y, a continuación, haga clic en Agregar extensión.
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.
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 según el tipo de la extensión del elemento de enlace que agregó en el paso anterior de la siguiente manera:
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 Subir extensión o Bajar extensión. La extensión de elemento de enlace más baja de la lista Binding corresponde al componente inferior de la pila de canales. El elemento de enlace más alto de la lista Binding 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.
En el cuadro de diálogo de propiedades de transporte, configure el resto de la configuración del transporte.
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 y registros de eventos erróneos.
Configurar el archivo machine.config para una extensión de comportamiento de WCF
En un símbolo del sistema, vaya a %FrameworkDir%\v4. La carpeta X.XXXXX\CONFIG y, a continuación, abra el archivo machine.config mediante el Bloc de notas.
En el Bloc de notas, si el archivo machine.config no tiene los <elementos system.serverModel>\<extensions> , agregue esos elementos dentro del <elemento de configuración> del archivo machine.config y 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.
Guarde el archivo machine.config en el Bloc de notas.
Si dispone de 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
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.
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 reinicie la instancia de host de BizTalk que ejecuta el adaptador.
Si utiliza el adaptador de WCF-CustomIsolated, en la consola de administración de IIS, reinicie el grupo de aplicación asociado a la ubicación de recepción WCF.
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óny, 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 o WCF-CustomIsolated según el adaptador WCF que quiera usar y, a continuación, haga clic en Configurar.
Si desea configurar un puerto de envío 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 Puertos de envíoy, a continuación, en el panel derecho, haga doble clic en <Enviar puerto>.
- 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.
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 según el 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.
En el cuadro de diálogo de propiedades de transporte, configure el resto de la configuración del transporte.
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 y registros de eventos erróneos.
Configuración de una ubicación de recepción WCF-Custom con un certificado SSL
- Si se produce un WCF-Custom ubicación de recepción para usar el controlador en modo kernel HTTP (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). Utilice la herramienta HttpCfg.exe para enlazar un certificado SSL con un puerto en el equipo. Para obtener más información, vea Cómo: Configurar un puerto con un certificado SSL.