Partager via


Guide pratique pour créer un itinéraire pour router dynamiquement un message vers une adresse e-mail à l’aide d’une requête LDAP

Objectif

Cette section montre comment créer un itinéraire qui interroge une adresse de messagerie via LDAP (Lightweight Directory Access Protocol), puis envoie un message électronique au point de terminaison résolu à l’aide de l’adaptateur SMTP BizTalk Server.

Dans cette rubrique de procédure, vous allez effectuer les étapes suivantes :

  • Créez un bordereau de routage d’itinéraire pour acheminer dynamiquement un message à l’aide d’une requête LDAP.

  • Testez l’itinéraire à l’aide de l’exemple d’application Itinerary Test Client.

Prérequis

Les procédures de cette rubrique pratique nécessitent l’achèvement des conditions préalables pour les activités de développement.

Le service d’annuaire Microsoft Active Directory doit être configuré et en cours d’exécution sur l’ordinateur sur lequel vous allez effectuer cette section (il n’est pas obligatoire que l’ordinateur soit le contrôleur de domaine, mais il doit être connecté au domaine). En outre, un serveur SMTP doit être configuré et en cours d’exécution ; pour tester le résultat de cette rubrique pratique, vous devez disposer d’un client avec lequel case activée l’e-mail envoyé par l’ESB.

Les instructions de cette section supposent qu’un organization nommé Global Bank, avec un domaine de globalbank.com, avec une unité d’organisation Active Directory nommée Employés qui contient un utilisateur nommé John Evans avec une adresse de messagerie valide dans son profil (par johne@globalbank.comexemple). Il n’est pas nécessaire de répliquer ces facteurs environnementaux ; toutefois, pour recréer cette implémentation dans votre environnement, veuillez tenir compte de ces facteurs et effectuer des substitutions si nécessaire.

Étapes

Pour créer un modèle de langage d’itinéraire ESB spécifique au domaine (DSL)

  1. Dans Visual Studio, ouvrez C :\HowTos\Patterns\Patterns.sln.

  2. Dans Explorateur de solutions, cliquez avec le bouton droit sur le projet ItineraryLibrary, pointez sur Ajouter, puis cliquez sur Nouvel itinéraire.

  3. Dans la boîte de dialogue Ajouter un nouvel élément , tapez LdapResolution dans la zone Nom , puis cliquez sur Ajouter.

Pour configurer les propriétés de l’itinéraire

  1. Dans Visual Studio, cliquez sur l’aire de conception de LdapResolution.itinerary. Dans le Fenêtre Propriétés LdapResolution, configurez les propriétés suivantes :

    1. Dans la liste déroulante Exporter de modèle , cliquez sur Exportateur d’itinéraire XML.

    2. Dans la section Paramètres de l’extenseur , en regard de la propriété fichier XML D’itinéraire , cliquez sur le bouton de sélection (...).

    3. Dans la boîte de dialogue Sélectionner un fichier XML , tapez C :\HowTos\Itinéraires\LdapResolution 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. En exportant 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 de client de test ESB. Vous effectuerez ce processus plus loin dans cette rubrique pratique.

Pour définir la structure de l’itinéraire

  1. À 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 :

    1. Cliquez sur la propriété Name , puis tapez ReceiveNAOrder.

    2. Dans la liste déroulante Extender , cliquez sur On-Ramp ESB Extender.

    3. Dans la liste déroulante Application BizTalk , cliquez sur Microsoft.Practices.ESB.

    4. Dans la liste déroulante Port de réception , cliquez sur OnRamp.Itinerary.

  2. À partir de la boîte à outils, faites glisser un élément de modèle de service d’itinéraire vers l’aire de conception, puis placez-le à droite de l’élément de modèle On-Ramp . Dans le Fenêtre Propriétés ItineraryService1, configurez les propriétés suivantes :

    1. Cliquez sur la propriété Name , puis tapez RouteMessageEmail.

    2. Dans la liste déroulante Extension de service d’itinéraire , cliquez sur Extension de messagerie.

      Notes

      Cette propriété définit que le processus aura lieu dans un pipeline (messagerie). Sinon, si le processus doit avoir lieu dans une orchestration, définissez la propriété Itinerary Service Extender sur Orchestration Extender.

    3. Dans la liste déroulante Conteneur , développez ReceiveNAOrder, puis cliquez sur Gestionnaires de réception.

    4. Dans la liste déroulante Nom du service , cliquez sur Microsoft.Practices.ESB.Services.Routing.

  3. Cliquez avec le bouton droit sur la collection Resolver de l’élément de modèle RouteMessageEmail , puis cliquez sur Ajouter un nouveau programme de résolution. Dans le Fenêtre Propriétés Resolver1, configurez les propriétés suivantes :

    1. Cliquez sur la propriété Name , puis tapez LdapResolver.

    2. Dans la liste déroulante Implémentation du programme de résolution, cliquez sur Extension du programme de résolution LDAP.

    3. Dans la liste déroulante Nom du transport , cliquez sur SMTP.

    4. Cliquez sur la propriété Emplacement de transport , puis tapez {mail}

    5. Cliquez sur la propriété SearchRoot , puis tapez ou=Employees,dc=globalbank,dc=com

      Notes

      Si vous n’avez pas configuré votre environnement en fonction des spécifications de la section « Prérequis », remplacez les valeurs de la propriété précédente par celles qui sont appropriées pour votre environnement.

    6. Cliquez sur la propriété Filter , puis remplacez la valeur par (&(objectClass=User)(|( givenName=john)))

      Notes

      Tapez la valeur précédente pour remplacer le texte existant.

    7. Dans la liste déroulante ThrowErrorIfNotFound , cliquez sur True.

  4. Dans le Fenêtre Propriétés, cliquez sur la propriété Configuration du point de terminaison, puis sur le bouton de sélection (...).

    1. Dans la boîte de dialogue Configuration du point de terminaison , cliquez sur la propriété EmailBodyText , puis tapez Order is ready to be traite.

    2. Cliquez sur la propriété From , puis tapez orders@globalbank.com.

    3. Cliquez sur la propriété MessagePartsAttachment , puis tapez 2.

    4. Cliquez sur la propriété Subject , puis tapez Order pour {givenName}.

    5. Configurez les propriétés SMTPAuthentication, SMTPHost, UserName et Password à l’aide des informations de connexion de votre environnement local.

    6. Cliquez sur OK pour fermer la boîte de dialogue Configuration du point de terminaison .

  5. Cliquez avec le bouton droit sur le programme de résolution LdapResolver , puis cliquez sur Configuration du programme de résolution de test.

  6. Dans la fenêtre Sortie, vérifiez que l’objet dans la valeur de configuration du point de terminaison résolue est Order for John, puis vérifiez que l’emplacement de transport résolu est l’adresse de messagerie associée au compte de l’utilisateur dans Active Directory (par exemple, ). johne@globalbank.com

  7. 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 RouteMessageEmail .

  8. À 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 RouteMessageEmail . Dans le Fenêtre Propriétés OffRamp1, configurez les propriétés suivantes :

    1. Cliquez sur la propriété Name , puis tapez EmailNAOrderDoc.

    2. Dans la liste déroulante Extender , cliquez sur Extension ESB hors rampe.

    3. Dans la liste déroulante Application BizTalk , cliquez sur GlobalBank.ESB.

    4. Dans la liste déroulante Port d’envoi , cliquez sur DynamicResolutionOneWay.

  9. À 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 RouteMessageEmail et l’élément de modèle EmailNAOrderDoc . Dans le Fenêtre Propriétés ItineraryService1, configurez les propriétés suivantes :

    1. Cliquez sur la propriété Name , puis tapez SendPortFilter.

    2. Dans la liste déroulante Extender de service d’itinéraire , cliquez sur Extender hors rampe.

    3. Dans la liste déroulante Hors rampe , développez EmailNAOrderDoc, puis cliquez sur Envoyer des gestionnaires.

  10. Dans la boîte à outils, cliquez sur Connecteur. Faites glisser une connexion de l’élément de modèle RouteMessageEmail vers l’élément de modèle SendPortFilter .

  11. 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 EmailNAOrderDoc .

Pour exporter le modèle à utiliser avec le client de test d’itinéraire

  1. Dans Visual Studio, cliquez avec le bouton droit sur l’aire de conception de l’itinéraire LdapResolution , puis cliquez sur Exporter le modèle.

    Notes

    La version XML de l’itinéraire s’ouvre dans Visual Studio.

  2. Enregistrez tous les artefacts de projet.

  3. Dans Windows Explorer, accédez à C :\HowTos\Itinéraires et notez la création de votre code XML d’itinéraire (LdapResolution.xml).

Pour tester l’itinéraire

  1. 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).

  2. Dans le client de test d’itinéraire, désactivez la zone Utiliser le service WCF case activée, puis cliquez sur Charger l’itinéraire.

  3. Dans la boîte de dialogue Ouvrir le fichier d’itinéraire , accédez à C :\HowTos\Itinéraires. Sélectionnez LdapResolution.xml, puis cliquez sur Ouvrir pour charger l’itinéraire.

  4. Cliquez sur OK pour effacer le message Itinéraire chargé avec succès .

  5. Dans le client de test d’itinéraire, cliquez sur le bouton de sélection (...) en regard de la zone Charger le message .

  6. 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.

  7. Cliquez sur le bouton Envoyer une demande . Une fois le test terminé, cliquez sur OK pour ignorer la confirmation qui s’affiche.

  8. Ouvrez Microsoft Outlook Express (ou le client de messagerie de votre choix) et vérifiez la remise du message à l’adresse e-mail de John Evans.

Ressources supplémentaires

Pour plus d'informations, consultez les rubriques connexes suivantes :