Cómo: Transformar un mensaje y enrutar el mensaje resultante a una ubicación de archivo con una lista de distribución de itinerarios
Objetivo
En esta sección se muestra cómo usar esB Designer lenguaje específico del dominio (DSL) para crear un itinerario que implemente la transformación de mensajes invocando un mapa de BizTalk y, a continuación, enruta los mensajes mediante el adaptador de archivo del kit de herramientas de Microsoft BizTalk ESB.
En este tema de procedimientos, completará los pasos siguientes:
Cree una lista de enrutamiento de itinerarios con un servicio de itinerarios de transformación que implemente un mapa de BizTalk.
Configure el itinerario para enrutar el mensaje transformado a una ubicación de archivo.
Pruebe el itinerario mediante la aplicación de ejemplo Cliente de prueba de itinerarios.
Requisitos previos
Los procedimientos de este tema de procedimientos requieren la finalización de los requisitos previos para las actividades de desarrollo.
Pasos
Para crear un modelo DSL de itinerario de ESB
En Visual Studio, abra C:\HowTos\Patterns\Patterns.sln.
En Explorador de soluciones, haga clic con el botón derecho en el proyecto ItineraryLibrary, seleccione Agregar y, a continuación, haga clic en Nuevo itinerario.
En el cuadro de diálogo Agregar nuevo elemento , haga clic en ItinerarioDsl en el panel Plantillas.
En el cuadro Nombre , escriba DataModelTransformation y, a continuación, haga clic en Agregar.
Para configurar las propiedades del itinerario
En Visual Studio, haga clic en la superficie de diseño de DataModelTransformation.itinerary. En el ventana Propiedades DataModelTransformation, configure las siguientes propiedades:
En la lista desplegable Exportador de modelos, haga clic en Exportador de itinerarios XML.
En la sección Configuración de extensor , junto a la propiedad Archivo XML de itinerario , haga clic en el botón de puntos suspensivos (...).
En el cuadro de diálogo Seleccionar archivo XML , en el cuadro Nombre de archivo , escriba C:\HowTos\Itineraries\DataModelTransformation y, a continuación, haga clic en Guardar.
Nota
Este paso le permite exportar el itinerario como XML a una ubicación de archivo local. Al exportar un itinerario a una ubicación de archivo local, en lugar de a la base de datos de itinerarios, permite realizar pruebas del itinerario mediante la aplicación cliente de prueba de ESB. Completará este proceso más adelante en este tema de procedimientos.
Para definir la estructura del itinerario
En el Cuadro de herramientas, arrastre un elemento de modelo on-Ramp a la superficie de diseño. En el ventana Propiedades OnRamp1, configure las siguientes propiedades:
Haga clic en la propiedad Name y escriba ReceiveNAOrder.
En la lista desplegable Extender , haga clic en Extensión de servicio ESB de rampa.
En la lista desplegable Aplicación de BizTalk , haga clic en Microsoft.Practices.ESB.
En la lista desplegable Puerto de recepción, haga clic en OnRamp.Itinerary.
En el Cuadro de herramientas, arrastre un elemento de modelo de Servicio de itinerarios a la superficie de diseño y, a continuación, colóquelo a la derecha del elemento de modelo On-Ramp . En el ventana Propiedades ItineraryService1, configure las siguientes propiedades:
Haga clic en la propiedad Name y escriba MapNAOrderToCNOrder.
En la lista desplegable Extender del servicio de itinerarios , haga clic en Extender de mensajería.
Nota
Esta propiedad define que el proceso tendrá lugar en una canalización (mensajería). Como alternativa, si el proceso tendrá lugar en una orquestación, establezca la propiedad Itinerary Service Extender en Orchestration Extender.
En la lista desplegable Contenedor , expanda ReceiveNAOrdery, a continuación, haga clic en Controladores de recepción.
En la lista desplegable Nombre de servicio , haga clic en Microsoft.Practices.ESB.Services.Transform.
Haga clic con el botón derecho en la colección Resolver del elemento de modelo MapNAOrderToCNOrder y, a continuación, haga clic en Agregar nuevo solucionador. En el ventana Propiedades Resolver1, configure las siguientes propiedades:
Haga clic en la propiedad Name y escriba StaticallySpecifyTheMap.
En la lista desplegable Implementación del solucionador , haga clic en Extensión de resolución estática.
En la lista desplegable Tipo de transformación, haga clic en GlobalBank.ESB.DynamicResolution.Transforms.SubmitOrderRequestNA_To_SubmitOrderRequestCN.
En la lista desplegable Nombre de transporte , haga clic en ARCHIVO.
En el cuadro de herramientas, haga clic en Conector. Arrastre una conexión desde el elemento del modelo ReceiveNAOrder al elemento de modelo MapNAOrderToCNOrder .
Desde el Cuadro de herramientas, arrastre un elemento de modelo Off-Ramp a la superficie de diseño y colóquelo a la derecha del elemento de modelo MapNAOrderToCNOrder . En el ventana Propiedades OffRamp1, configure las siguientes propiedades:
Haga clic en la propiedad Name y escriba SendCNOrder.
En la lista desplegable Extender , haga clic en Off-Ramp ESB Extender.
En la lista desplegable Aplicación de BizTalk , haga clic en GlobalBank.ESB.
En la lista desplegable Puerto de envío, haga clic en DynamicResolutionOneWay.
En el Cuadro de herramientas, arrastre un elemento de modelo de Servicio de itinerarios a la superficie de diseño y colóquelo entre el elemento de modelo MapNAOrderToCNOrder y el elemento de modelo SendCNOrder . En el ventana Propiedades ItineraryService1, configure las siguientes propiedades:
Haga clic en la propiedad Name y escriba SendPortFilter.
En la lista desplegable Extender del servicio de itinerarios , haga clic en Extender fuera de rampa.
En la lista desplegable Off-Ramp ,expanda SendCNOrdery, a continuación, haga clic en Send Handlers (Enviar controladores).
Haga clic con el botón derecho en la colección Resolver del elemento de modelo SendPortFilter y, a continuación, haga clic en Agregar nuevo solucionador. En el ventana Propiedades Resolver1, configure las siguientes propiedades:
Haga clic en la propiedad Name y, a continuación, escriba ConfigureFolderSettings.
En la lista desplegable Nombre de transporte , haga clic en ARCHIVO.
Haga clic en la propiedad Ubicación de transporte y escriba C:\HowTos\Out\%MessageID%.xml.
Nota
Cada rampa de salida tendrá asociado un servicio de itinerarios; la combinación de las propiedades de Servicio de itinerarios y las propiedades de la rampa de salida definen la suscripción del puerto de envío dinámico.
En el cuadro de herramientas, haga clic en Conector. Arrastre una conexión desde el elemento del modelo MapNAOrderToCNOrder al elemento de modelo SendPortFilter .
En el cuadro de herramientas, haga clic en Conector. Arrastre una conexión desde el elemento de modelo SendPortFilter al elemento de modelo SendCNOrder .
Para exportar el modelo para su uso con el cliente de prueba de itinerarios
En Visual Studio, haga clic con el botón derecho en la superficie de diseño del itinerario DataModelTransformation y, a continuación, haga clic en Exportar modelo.
Nota
La versión XML del itinerario se abre en Visual Studio.
Guarde todos los artefactos del proyecto.
En el Explorador de Windows, vaya a C:\HowTos\Itinerarios y observe la creación del XML del itinerario (DataModelTransformation.xml).
Para probar el itinerario
Abra la aplicación de ejemplo Cliente de prueba de itinerarios mediante el acceso directo creado durante los requisitos previos para las actividades de desarrollo (C:\HowTos\ESB.Itinerary.Test.exe - Acceso directo).
En el cliente de prueba de itinerarios, desactive la casilla Usar servicio WCF y, a continuación, haga clic en Cargar itinerario.
En el cuadro de diálogo Abrir archivo de itinerario , vaya a C:\HowTos\Itinerarios. Seleccione DataModelTransformation.xmly haga clic en Abrir para cargar el itinerario.
Haga clic en Aceptar para borrar el mensaje Itinerario cargado correctamente .
En el cliente de prueba de itinerarios, haga clic en el botón de puntos suspensivos (...) situado junto al cuadro Cargar mensaje .
En el cuadro de diálogo Seleccionar documento XML para cargar , vaya a C:\HowTos. Seleccione NAOrderDoc.xmly haga clic en Abrir para cargar el mensaje de prueba.
Haga clic en el botón Enviar solicitud . Cuando finalice la prueba, haga clic en Aceptar para descartar la confirmación que aparece.
En el Explorador de Windows, vaya a C:\HowTos\Out. Compruebe que el mensaje %MessageID%.xml se ha escrito en el directorio.
Recursos adicionales
Para obtener más información, consulte estos temas relacionados: