Compartir a través de


Publicación de un servicio en el Registro UDDI 3.0

Objetivo

En esta sección se muestra cómo usar el sitio de servicio UDDI para publicar un punto de conexión de servicio web que se puede resolver desde dentro de un itinerario con el fin de enrutar un mensaje ESB. Duplicará el servicio PurchaseOrderSubmitOrderService que está actualmente publicado en el registro.

En este tema de cómo-hacer, realizarás los siguientes pasos:

  • Publique un servicio en el registro Universal Description, Discovery y Integration (UDDI) 3 mediante la herramienta UDDI Publisher.

  • Pruebe la publicación del servicio mediante una hoja de ruta de itinerario que resuelva el punto de conexión del servicio usando un resolvedor UDDI3.

Prerrequisitos

Los procedimientos en este tema de instrucciones requieren la finalización de los requisitos previos para las actividades de desarrollo y la ejecución de la herramienta UDDI Publisher (puede instalarla en la carpeta de instalación %ESB%\Bin\Microsoft.Practices.ESB.UDDIPublisher.exe).

Pasos

Para crear el NewPOService en el registro UDDI

  1. En Internet Explorer, vaya al sitio del servicio UDDI (de forma predeterminada, la dirección URL de este es http://localhost/uddi).

  2. En la página Servicios uddi , haga clic en Publicar.

  3. En el panel Publicar, haga clic con el botón derecho en Microsoft.Practices.ESB y, a continuación, haga clic en Agregar servicio.

  4. En la página siguiente, seleccione Especificar una clave que se va a usar y, a continuación, haga clic en Continuar.

  5. En la página siguiente, haga clic en la partición de clave esb . En el cuadro Sufijo de clave , escriba newposervice y, a continuación, haga clic en Continuar.

  6. En la página siguiente, junto a (Nuevo nombre de servicio), haga clic en Editar. Asigne al servicio el nombre NewPOService y, a continuación, haga clic en Actualizar.

  7. Haga clic en Agregar descripción, escriba una descripción para el servicio (por ejemplo, Servicio de ejemplo) y, a continuación, haga clic en Actualizar.

Para agregar una vinculación para NewPOService

  1. Haga clic en la pestaña Enlaces y, a continuación, haga clic en Agregar enlace.

  2. Seleccione Especificar una clave que se va a usar y, a continuación, haga clic en Continuar.

  3. En la página siguiente, haga clic en la partición esb. En el cuadro Sufijo de clave , escriba newposervicebinding y, a continuación, haga clic en Continuar.

  4. En Punto de acceso, haga clic en Editar, y luego complete lo siguiente:

    1. En el cuadro Punto de acceso , escriba http://localhost/ESB.CanadianServices/SubmitPOService.asmx.

    2. En la lista desplegable Tipo de uso, haga clic en punto de conexión y, a continuación, haga clic en Actualizar.

Para configurar la información de la instancia de enlace

  1. Haga clic en la pestaña Información de instancia y, a continuación, haga clic en Agregar información de instancia.

  2. En el cuadro Buscar nombres tModel que contienen , escriba %esb% y, a continuación, haga clic en Buscar.

  3. Busque y haga clic en el tModel para transporttype.

    Nota:

    Para completar los pasos restantes de este procedimiento, es posible que tenga que cambiar entre la página 1 y la página 2.

  4. En la sección Descripciones , haga clic en Agregar descripción.

  5. En el cuadro Descripción , escriba Tipo de transporte para uso de itinerarios de ESB y, a continuación, haga clic en Actualizar.

  6. Haga clic en la pestaña Detalles de la instancia y, a continuación, haga clic en Editar.

  7. En el cuadro Parámetros de instancia , escriba WCF-BasicHttp y, a continuación, haga clic en Actualizar.

  8. En la sección Descripciones , haga clic en Agregar descripción.

  9. En el cuadro Descripción , escriba Transporte HTTP básico de WCF y, a continuación, haga clic en Actualizar.

  10. En el panel Publicar, en NewPOService, haga clic en http://localhost/esb.canadianservices/submitposervice.asmx.

  11. En la pestaña Información de instancia , haga clic en Agregar información de instancia.

  12. Con los pasos descritos anteriormente, agregue la siguiente información de instancia, según los valores que se muestran en la tabla siguiente.

    tModel Descripción Parámetro Descripción del parámetro
    microsoft-com:esb:resolución de tiempo de ejecución:patrón de intercambio de mensajes Patrón de intercambio de mensajes Two-Way Operación bidireccional
    microsoft-com:esb:runtimeresolution:cachetimeout Tiempo de expiración de caché -1 Deshabilitado actualmente
    microsoft-com:esb:runtimeresolution:jaxrpcresponse JaxRpcResponse falso
    microsoft-com:esb:runtimeresolution:action Acción de servicio enviarPedido Especifica el método de servicio que se va a invocar.
    microsoft-com:esb:runtimeresolution:targetnamespace Espacio de nombres de servicio http://globalbank.esb.dynamicresolution.com/canadianservices Espacio de nombres de destino

Para configurar la categorización de vínculos

  1. En el panel Publicar, en NewPOService, haga clic en http://localhost/esb.canadianservices/submitposervice.asmx.

  2. En la pestaña Categorías , haga clic en Agregar categoría personalizada.

  3. En el cuadro Buscar , escriba %esb% y haga clic en Buscar.

  4. Busque y haga clic en microsoft-com:esb:runtimeresolution:biztalkapplication tModel.

  5. En el cuadro Nombre de clave , escriba Aplicación de BizTalk.

  6. En el cuadro Valor de clave , escriba Microsoft.Practices.ESB y, a continuación, haga clic en Agregar categoría.

  7. Con los pasos descritos anteriormente, agregue las siguientes categorías personalizadas, según los valores que se muestran en la tabla siguiente.

    tModel Nombre de clave Valor de clave
    microsoft-com:esb:runtimeresolution:portname Nombre de puerto NewPOService
    microsoft-com:esb:runtimeresolution:transporttype Tipo de transporte WCF-BasicHttp

Para buscar el servicio en el registro UDDI

  1. En Internet Explorer, en la página UDDI Services, haga clic en Buscar.

  2. Haga clic en la pestaña Servicios .

  3. En el cuadro Nombre del servicio , escriba %PO%y haga clic en Buscar.

  4. En el panel Buscar , en la pestaña Resultados , haga clic en NewPOService.

    Nota:

    Esto confirma que el servicio se publicó correctamente en el registro.

Para crear un modelo de itinerario para probar la publicación del servicio UDDI

  1. En Visual Studio, abra C:\HowTos\Patterns\Patterns.sln.

  2. En el 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.

  3. En el cuadro de diálogo Agregar nuevo elemento , en el cuadro Nombre , escriba NewBindingKeySearch y, a continuación, haga clic en Agregar.

Para configurar las propiedades del itinerario

  1. En Visual Studio, haga clic en la superficie de diseño de NewBindingKeySearch.itinerary. En la ventana Propiedades de NewBindingKeySearch , configure las siguientes propiedades:

    1. En la lista desplegable Is Request Response (Respuesta de solicitud ), haga clic en True.

    2. En la lista desplegable Exportador de modelos, haga clic en Exportador de itinerarios XML.

    3. En la sección Configuración del extensor , junto a la propiedad Archivo XML de itinerario , haga clic en el botón de puntos suspensivos (...).

    4. En el cuadro de diálogo Seleccionar archivo XML , escriba C:\HowTos\Itineraries\NewBindingKeySearch en el cuadro Nombre de archivo 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, habilita las pruebas del itinerario mediante la aplicación cliente de prueba de ESB. Completará este proceso más adelante en este tema de instrucciones.

Para definir la estructura del itinerario

  1. En el cuadro de herramientas, arrastre un elemento de modelo On-Ramp a la superficie de diseño. En la ventana Propiedades de OnRamp1 , configure las siguientes propiedades:

    1. Haga clic en la propiedad Name y escriba ReceiveNAOrder.

    2. En la lista desplegable Extender , haga clic en On-Ramp ESB Extender.

    3. En la lista desplegable Aplicación de BizTalk , haga clic en Microsoft.Practices.ESB.

    4. En la lista desplegable Puerto de recepción , haga clic en OnRamp.Itinerary.Response.

  2. En el Cuadro de herramientas, arrastre un elemento de modelo de Servicio de itinerarios a la superficie de diseño. En la ventana Propiedades de ItineraryService1 , configure las siguientes propiedades:

    1. Haga clic en la propiedad Name y escriba TransformNAOrder.

    2. En la lista desplegable Extensión del servicio de itinerario, haga clic en Extensión de mensajería.

    3. En la lista desplegable Contenedor, despliegue ReceiveNAOrder y, a continuación, haga clic en Controladores de recepción.

    4. En la lista desplegable Nombre del servicio , haga clic en Microsoft.Practices.ESB.Services.Transform.

  3. Haga clic con el botón derecho en la colección Resolver del elemento de modelo TransformNAOrder y, a continuación, haga clic en Agregar nuevo solucionador. En la ventana Propiedades de Resolver1 , configure las siguientes propiedades:

    1. Haga clic en la propiedad Name y escriba NAOrder_to_CNOrder.

    2. En la lista desplegable Implementación del solucionador , haga clic en Extensión de resolución estática.

    3. En la lista desplegable Tipo de Transformación, haga clic en GlobalBank.ESB.DynamicResolution.Transforms.SubmitOrderRequestNA_To_SubmitOrderRequestCN.

  4. En el cuadro de herramientas, haga clic en Conector. Arrastre una conexión desde el elemento del modelo ReceiveNAOrder al elemento de modelo TransformNAOrder .

  5. En el Cuadro de herramientas, arrastre un elemento de modelo de Servicio de itinerarios a la superficie de diseño. En la ventana Propiedades de ItineraryService1 , configure las siguientes propiedades:

    1. Haga clic en la propiedad Name y escriba BindingKeyRoute.

    2. En la lista desplegable Extensión del servicio de itinerario, haga clic en Extensión de mensajería.

    3. En la lista desplegable Contenedor, despliegue ReceiveNAOrder y, a continuación, haga clic en Controladores de recepción.

    4. En la lista desplegable Nombre del servicio , haga clic en Microsoft.Practices.ESB.Services.Routing.

  6. Haga clic con el botón derecho en la colección Resolver del elemento de modelo BindingKeyRoute y, a continuación, haga clic en Agregar nuevo solucionador. En la ventana Propiedades de Resolver1 , configure las siguientes propiedades:

    1. Haga clic en la propiedad Name y escriba BindingKeySearch.

    2. En la lista desplegable Implementación del solucionador , haga clic en Extensión de resolución Uddi3.

    3. En la lista desplegable Resolver Moniker , haga clic en UDDI3.

    4. Haga clic en la propiedad Clave de enlace y escriba uddi:esb:newposervicebinding. Para buscar el valor de clave, haga clic en el http://localhost/ESB.CanadianServices/SubmitPOService.asmx servicio en UDDI y, a continuación, haga clic en Más detalles.

  7. Haga clic con el botón derecho en el solucionador BindingKeySearch y, a continuación, haga clic en Configuración de la resolución de pruebas.

    Nota:

    Compruebe la salida mostrada en la ventana Salida.

  8. En el cuadro de herramientas, haga clic en Conector. Arrastre una conexión desde el elemento de modelo TransformNAOrder al elemento de modelo BindingKeyRoute .

  9. En 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 BindingKeyRoute . En la ventana Propiedades de OffRamp1 , configure las siguientes propiedades:

    1. Haga clic en la propiedad Name y escriba SendCNOrder.

    2. En la lista desplegable Extender , haga clic enOff-Ramp extensor ESB.

    3. En la lista desplegable Aplicación de BizTalk , haga clic en GlobalBank.ESB.

    4. En la lista desplegable Puerto de envío , haga clic en DynamicResolutionSolicitResp.

  10. 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 BindingKeyRoute y el elemento de modelo SendCNOrder . En la ventana Propiedades de ItineraryService1 , configure las siguientes propiedades:

    1. Haga clic en la propiedad Name y escriba SendPortFilter.

    2. En la lista desplegable Extender del servicio de itinerarios , haga clic enOff-Ramp Extender.

    3. En la lista desplegable Off-Ramp, expanda SendCNOrder, a continuación, haga clic en Enviar controladores.

  11. En el cuadro de herramientas, haga clic en Conector. Arrastre una conexión desde el elemento de modelo BindingKeyRoute al elemento de modelo SendPortFilter .

  12. En el cuadro de herramientas, haga clic en Conector. Arrastre una conexión desde el elemento de modelo SendPortFilter al elemento de modelo SendNAOrder .

Para exportar el modelo para su uso con el cliente de prueba de itinerarios

  1. En Visual Studio, haga clic con el botón derecho en la superficie de diseño del itinerario NewBindingKeySearch y, a continuación, haga clic en Exportar modelo.

    Nota:

    La versión XML del itinerario se abre en Visual Studio.

  2. Guarde todos los artefactos del proyecto.

  3. En el Explorador de Windows, vaya a C:\HowTos\Itineraries and notice the creation of your itinerary XML (NewBindingKeySearch.xml).

Para probar el itinerario

  1. Abra la aplicación de ejemplo Cliente de Prueba de Itinerarios mediante el acceso directo creado durante los prerrequisitos para las actividades de desarrollo (C:\HowTos\ESB.Itinerary.Test.exe - acceso directo).

  2. En el cliente de prueba de itinerarios, en el grupo Opciones de servicio web , desactive la casilla Usar servicio WCF y, a continuación, active la casilla Two-Way Servicio .

  3. Haga clic en el botón Cargar itinerario .

  4. En el cuadro de diálogo Abrir archivo de itinerario , vaya a C:\HowTos\Itinerarios. Seleccione NewBindingKeySearch.xmly haga clic en Abrir para cargar el itinerario.

  5. Haga clic en Aceptar para borrar el mensaje Itinerario cargado correctamente .

  6. En el cliente de prueba de itinerarios, haga clic en el botón de puntos suspensivos (...) situado junto al cuadro Cargar mensaje .

  7. En el cuadro de diálogo Seleccionar documento XML que se va a cargar , vaya a C:\HowTos. Seleccione NAOrderDoc.xmly haga clic en Abrir para cargar el mensaje de prueba.

  8. Haga clic en el botón Enviar solicitud . Cuando finalice la prueba, haga clic en Aceptar para descartar la confirmación que aparece.

  9. Compruebe que el mensaje de respuesta correcto aparece en el cuadro de texto Resultado del cliente de prueba de Itineray.

Recursos adicionales

Para obtener más información, vea los siguientes temas relacionados: