Guide pratique pour résoudre un point de terminaison de service à l’aide d’une recherche de catégorie UDDI
Objectif
Cette section montre comment utiliser esb Designer langage spécifique au domaine (DSL) pour créer un bordereau de routage basé sur un itinéraire qui utilise le programme de résolution UDDI (Universal Description, Discovery, and Integration) 3 pour localiser un point de terminaison de service à l’aide d’une recherche par catégorie. Dans ce scénario, le point de terminaison de service est un point de terminaison de fichier publié dans UDDI.
Dans cette rubrique de procédure, vous allez effectuer les étapes suivantes :
Créez un bordereau de routage d’itinéraire pour résoudre un point de terminaison de service.
Configurez l’itinéraire pour acheminer le message vers un point de terminaison de service à l’aide d’un programme de résolution UDDI 3.
Testez l’itinéraire à l’aide de l’exemple d’application Itinerary Test Client.
Prérequis
Les procédures décrites dans cette rubrique de procédure nécessitent l’achèvement des conditions préalables pour les activités de développement.
Étapes
Pour créer un modèle d’itinéraire
Dans Visual Studio, ouvrez C :\HowTos\Patterns\Patterns.sln.
Dans Explorateur de solutions, cliquez avec le bouton droit sur le projet ItinéraireLibrary, pointez sur Ajouter, puis cliquez sur Nouvel itinéraire.
Dans la boîte de dialogue Ajouter un nouvel élément , tapez UDDI3CategorySearch dans la zone Nom , puis cliquez sur Ajouter.
Pour configurer les propriétés de l’itinéraire
Dans Visual Studio, cliquez sur l’aire de conception de UDDI3CategorySearch.itinerary. Dans le Fenêtre Propriétés UDDI3CategorySearch, configurez les propriétés suivantes :
Dans la liste déroulante Exporter de modèle , cliquez sur Exportateur d’itinéraire XML.
Dans la section Extender Settings (Paramètres de l’extendeur ), en regard de la propriété Itinerary XML file (Fichier XML d’itinéraire ), cliquez sur le bouton de sélection (...).
Dans la boîte de dialogue Sélectionner un fichier XML , tapez C :\HowTos\Itineraries\UDDI3CategorySearch dans la zone Nom de fichier , puis cliquez sur Enregistrer.
Notes
Cette étape vous permet d’exporter l’itinéraire au format XML vers un emplacement de fichier local. L’exportation d’un itinéraire vers un emplacement de fichier local, plutôt que vers la base de données d’itinéraire, permet de tester l’itinéraire à l’aide de l’application cliente de test ESB. Vous terminerez ce processus plus loin dans cette rubrique de procédures.
Pour définir la structure de l’itinéraire
À partir de la boîte à outils, faites glisser un élément de modèle On-Ramp vers l’aire de conception. Dans le Fenêtre Propriétés OnRamp1, configurez les propriétés suivantes :
Cliquez sur la propriété Name , puis tapez ReceiveNAOrder.
Dans la liste déroulante Extendeur , cliquez sur On-Ramp ESB Extender.
Dans la liste déroulante Application BizTalk , cliquez sur Microsoft.Practices.ESB.
Dans la liste déroulante Port de réception, cliquez sur OnRamp.Itinerary.
À partir de la Boîte à outils, faites glisser un élément de modèle service D’itinéraire vers l’aire de conception. Dans la Fenêtre Propriétés ItineraryService1, configurez les propriétés suivantes :
Cliquez sur la propriété Name , puis tapez CategoryRoute.
Dans la liste déroulante Extendeur de service d’itinéraire , cliquez sur Extendeur de messagerie.
Dans la liste déroulante Conteneur , développez ReceiveNAOrder, puis cliquez sur Recevoir des gestionnaires.
Dans la liste déroulante Nom du service , cliquez sur Microsoft.Practices.ESB.Services.Routing
Cliquez avec le bouton droit sur la collection Resolver de l’élément de modèle CategoryRoute , puis cliquez sur Ajouter un nouveau programme de résolution. Dans le Fenêtre Propriétés Resolver1, configurez les propriétés suivantes :
Cliquez sur la propriété Name , puis tapez CategorySearch.
Dans la liste déroulante Implémentation du programme de résolution, cliquez sur Extension Uddi3 Resolver.
Dans la liste déroulante Moniker de résolution , cliquez sur UDDI3.
Cliquez sur la propriété Recherche de catégories, puis sur le bouton de sélection (...).
Dans la boîte de dialogue Éditeur de propriétés de valeur de nom , cliquez sur Ajouter.
Cliquez sur la propriété Name , puis tapez uddi :esb :biztalkapplication.
Cliquez sur la propriété Value , puis tapez GlobalBank.ESB.
Dans la boîte de dialogue Éditeur de propriétés de valeur de nom , cliquez sur Ajouter.
Cliquez sur la propriété Name , puis tapez uddi :esb :portname.
Cliquez sur la propriété Value , puis tapez OrderFileServicev3.
Dans la boîte de dialogue Éditeur de propriétés de valeur de nom , cliquez sur Ajouter.
Cliquez sur la propriété Name , puis tapez uddi :esb :version.
Cliquez sur la propriété Value , puis tapez 1.
Cliquez sur OK pour fermer la boîte de dialogue Éditeur de propriétés de valeur de nom.
Cliquez avec le bouton droit sur le programme de résolution CategorySearch , puis cliquez sur Configuration du programme de résolution de test.
Notes
Vérifiez la sortie affichée dans la fenêtre Sortie.
Dans la boîte à outils, cliquez sur Connecteur. Faites glisser une connexion de l’élément de modèle ReceiveNAOrder vers l’élément de modèle CategoryRoute .
À partir de la boîte à outils, faites glisser un élément de modèle Off-Ramp vers l’aire de conception, puis placez-le à droite de l’élément de modèle CategoryRoute . Dans le Fenêtre Propriétés OffRamp1, configurez les propriétés suivantes :
Cliquez sur la propriété Name , puis tapez SendNAOrder.
Dans la liste déroulante Extendeur , cliquez sur Off-Ramp ESB Extender.
Dans la liste déroulante Application BizTalk , cliquez sur GlobalBank.ESB.
Dans la liste déroulante Port d’envoi , cliquez sur DynamicResolutionOneWay.
À partir de la boîte à outils, faites glisser un élément de modèle service D’itinéraire vers l’aire de conception, puis placez-le entre l’élément de modèle CategoryRoute et l’élément de modèle SendNAOrder . Dans la Fenêtre Propriétés ItineraryService1, configurez les propriétés suivantes :
Cliquez sur la propriété Name , puis tapez SendPortFilter.
Dans la liste déroulante Extendeur de service d’itinéraire , cliquez sur Extendeur hors rampe.
Dans la liste déroulante Hors rampe , développez SendNAOrder, puis cliquez sur Envoyer des gestionnaires.
Dans la boîte à outils, cliquez sur Connecteur. Faites glisser une connexion de l’élément de modèle CategoryRoute vers l’élément de modèle SendPortFilter .
Dans la boîte à outils, cliquez sur Connecteur. Faites glisser une connexion de l’élément de modèle SendPortFilter vers l’élément de modèle SendNAOrder .
Pour exporter le modèle à utiliser avec le client de test d’itinéraire
Dans Visual Studio, cliquez avec le bouton droit sur l’aire de conception de l’itinéraire UDDI3CategorySearch , puis cliquez sur Exporter le modèle.
Notes
La version XML de l’itinéraire s’ouvre dans Visual Studio.
Enregistrez tous les artefacts de projet.
Dans Windows Explorer, accédez à C :\HowTos\Itinéraires et notez la création de votre xml d’itinéraire (UDDI3CategorySearch.xml).
Pour tester l’itinéraire
Ouvrez l’exemple d’application Itinerary Test Client à l’aide du raccourci créé pendant les prérequis pour les activités de développement (C:\HowTos\ESB.Itinerary.Test.exe - Raccourci).
Dans le client de test d’itinéraire, désactivez la zone Utiliser le service WCF case activée, puis cliquez sur Itinéraire de chargement.
Dans la boîte de dialogue Ouvrir le fichier d’itinéraire , accédez à C :\HowTos\Tineraryes. Sélectionnez UDDI3CategorySearch.xml, puis cliquez sur Ouvrir pour charger l’itinéraire.
Cliquez sur OK pour effacer le message Itinéraire chargé avec succès .
Dans le client de test d’itinéraire, cliquez sur le bouton de sélection (...) en regard de la zone Charger le message .
Dans la boîte de dialogue Sélectionner un document XML à charger , accédez à C :\HowTos. Sélectionnez NAOrderDoc.xml, puis cliquez sur Ouvrir pour charger le message de test.
Cliquez sur le bouton Envoyer la demande . Une fois le test terminé, cliquez sur OK pour ignorer la confirmation qui s’affiche.
Dans Windows Explorer, accédez à C :\Projects\Microsoft.Practices.ESB\Source\Samples\DynamicResolution\Test\Filedrop\Out et vérifiez que le message %MessageID%.xml a été écrit dans le répertoire.
Ressources supplémentaires
Pour plus d'informations, consultez les rubriques connexes suivantes :