Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ziel
In diesem Abschnitt wird veranschaulicht, wie Sie eine Reiseroute erstellen, die eine E-Mail-Adresse über LDAP (Lightweight Directory Access Protocol) abfragt und dann eine E-Mail-Nachricht mithilfe des BizTalk Server-SMTP-Adapters an den aufgelösten Endpunkt sendet.
In diesem Thema "Anleitungen" führen Sie die folgenden Schritte aus:
Erstellen Sie einen Routenrouting-Verteiler, um eine Nachricht mithilfe einer LDAP-Abfrage dynamisch weiterzuleiten.
Testen Sie die Reiseroute mithilfe der Beispielanwendung "Routey Test Client".
Voraussetzungen
Die Verfahren in diesem Thema "Anleitungen" erfordern den Abschluss der Voraussetzungen für die Entwicklungsaktivitäten.
Auf dem Computer, auf dem Sie diesen Abschnitt abschließen, muss der Microsoft Active Directory-Verzeichnisdienst konfiguriert und ausgeführt werden (es ist nicht erforderlich, dass der Computer der Domänencontroller ist, aber mit der Domäne verbunden sein muss). Außerdem muss ein SMTP-Server konfiguriert und ausgeführt werden; Um das Ergebnis dieses Themas zu testen, müssen Sie über einen Client verfügen, mit dem die von der ESB gesendete E-Mail überprüft werden kann.
Die Anweisungen in diesem Abschnitt gehen von einer Organisation namens Global Bank mit einer Domäne namens globalbank.com aus, sowie einer Active Directory-Organisationseinheit namens "Employees", die einen Benutzer namens John Evans mit einer gültigen E-Mail-Adresse in seinem Profil enthält (zum Beispiel johne@globalbank.com). Es ist nicht notwendig, diese Umweltfaktoren zu replizieren; Um diese Implementierung in Ihrer Umgebung neu zu erstellen, berücksichtigen Sie diese Faktoren jedoch, und ersetzen Sie sie bei Bedarf.
Schritte
So erstellen Sie ein domainspezifisches ESB-Ablaufsmodell (DSL)
Öffnen Sie in Visual Studio C:\HowTos\Patterns\Patterns.sln.
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das ItineraryLibrary-Projekt, zeigen Sie auf "Hinzufügen", und klicken Sie dann auf "Neue Reiseroute".
Geben Sie im Dialogfeld "Neues Element hinzufügen" im Feld "Name" ldapResolution ein, und klicken Sie dann auf "Hinzufügen".
So konfigurieren Sie die Eigenschaften der Reiseroute
Klicken Sie in Visual Studio auf die Entwurfsoberfläche von LdapResolution.itinerary. Konfigurieren Sie im Fenster "LdapResolution-Eigenschaften " die folgenden Eigenschaften:
Klicken Sie in der Dropdownliste "Modellexporteur " auf "XML-Reiseroutenexporteur".
Klicken Sie im Abschnitt "Extender-Einstellungen" neben der Eigenschaft "Reiseplan-XML-Datei" auf die Schaltfläche mit den Auslassungspunkten (...).
Geben Sie im Dialogfeld "XML-Datei auswählen " "C:\HowTos\Itineraries\LdapResolution " in das Feld "Dateiname " ein, und klicken Sie dann auf " Speichern".
Hinweis
Mit diesem Schritt können Sie die Reiseroute als XML in einen lokalen Dateispeicherort exportieren. Durch das Exportieren einer Reiseroute an einen lokalen Dateispeicherort statt in die Reiseroutendatenbank können Sie die Reiseroute mithilfe der ESB-Testclientanwendung testen. Sie werden diesen Prozess später in diesem How-to-Thema abschließen.
Die Struktur der Reiseroute definieren
Ziehen Sie ein On-Ramp-Modellelement aus der Toolbox auf die Entwurfsoberfläche. Konfigurieren Sie im Fenster " OnRamp1-Eigenschaften " die folgenden Eigenschaften:
Klicken Sie auf die Name-Eigenschaft , und geben Sie " ReceiveNAOrder" ein.
Klicken Sie in der Dropdownliste "Extender " auf "On-Ramp ESB Extender".
Klicken Sie in der Dropdownliste " BizTalk Application " auf "Microsoft.Practices.ESB".
Klicken Sie in der Dropdownliste Empfangsport auf „OnRamp.Itinerary“.
Ziehen Sie aus der Toolbox ein Modellelement des Reiseroutendiensts auf die Entwurfsoberfläche, und platzieren Sie es dann rechts neben dem On-Ramp-Modellelement . Konfigurieren Sie im Fenster " ItineraryService1-Eigenschaften " die folgenden Eigenschaften:
Klicken Sie auf die Name-Eigenschaft , und geben Sie dann RouteMessageEmail ein.
Klicken Sie in der Dropdownliste "Routey Service Extender " auf "Messaging Extender".
Hinweis
Diese Eigenschaft definiert, dass der Prozess in einer Pipeline (Messaging) stattfindet. Alternativ, wenn der Prozess in einer Orchestrierung stattfindet, legen Sie die Eigenschaft Itinerary Service Extender auf Orchestration Extender fest.
Erweitern Sie in der Dropdownliste Container den Eintrag ReceiveNAOrder, und klicken Sie dann auf Receive Handlers.
Klicken Sie in der Dropdownliste " Dienstname " auf "Microsoft.Practices.ESB.Services.Routing".
Klicken Sie mit der rechten Maustaste auf die Resolver-Auflistung des RouteMessageEmail-Modellelements , und klicken Sie dann auf "Neuen Resolver hinzufügen". Konfigurieren Sie im Fenster "Resolver1-Eigenschaften " die folgenden Eigenschaften:
Klicken Sie auf die Name-Eigenschaft , und geben Sie dann LdapResolver ein.
Klicken Sie in der Dropdownliste "ResolverImplementierung" auf "LDAP Resolver Extension".
Klicken Sie in der Dropdownliste "Transportname " auf SMTP.
Klicken Sie auf die Eigenschaft „Transportspeicherort“ und geben Sie dann {mail} ein.
Klicken Sie auf die SearchRoot-Eigenschaft , und geben Sie dann ou=Employees,dc=globalbank,dc=com ein.
Hinweis
Wenn Sie Ihre Umgebung nicht gemäß den Spezifikationen im Abschnitt "Voraussetzungen" eingerichtet haben, ersetzen Sie die Werte in der vorherigen Eigenschaft durch diejenigen, die für Ihre Umgebung geeignet sind.
Klicken Sie auf die Filter-Eigenschaft , und ändern Sie dann den Wert in (&(objectClass=User)(|( givenName=john)))
Hinweis
Geben Sie den vorherigen Wert ein, um den vorhandenen Text zu ersetzen.
Klicken Sie in der Dropdownliste "ThrowErrorIfNotFound " auf "True".
Klicken Sie im Eigenschaftenfenster auf die Eigenschaft Endpunktkonfiguration und dann auf die Schaltfläche mit den Auslassungspunkten (...).
Klicken Sie im Dialogfeld Endpunktkonfiguration auf die Eigenschaft "EmailBodyText", und geben Sie dann Auftrag ist bereit zur Bearbeitung ein.
Klicken Sie auf die From-Eigenschaft , und geben Sie orders@globalbank.comdann ein.
Klicken Sie auf die MessagePartsAttachment-Eigenschaft , und geben Sie dann "2" ein.
Klicken Sie auf die Subject-Eigenschaft , und geben Sie dann "Order" für {givenName} ein.
Konfigurieren Sie die Eigenschaften SMTPAuthentication, SMTPHost, Benutzername und Passwort mithilfe der Verbindungsinformationen für Ihre lokale Umgebung.
Klicken Sie auf "OK ", um das Dialogfeld "Endpunktkonfiguration " zu schließen.
Klicken Sie mit der rechten Maustaste auf den LdapResolver, und klicken Sie dann auf Resolver-Konfiguration testen.
Überprüfen Sie im Ausgabefenster, ob der Betreff im aufgelösten EndpunktkonfigurationswertOrder for John ist, und stellen Sie dann sicher, dass der aufgelöste Transportspeicherort die E-Mail-Adresse ist, die dem Benutzerkonto in Active Directory zugeordnet ist (z. B. johne@globalbank.com).
Klicken Sie in der Toolbox auf "Verbinder". Ziehen Sie eine Verbindung aus dem ReceiveNAOrder-Modellelement in das RouteMessageEmail-Modellelement .
Ziehen Sie aus der Toolbox ein Off-Ramp-Modellelement auf die Entwurfsoberfläche, und platzieren Sie es dann rechts neben dem RouteMessageEmail-Modellelement . Konfigurieren Sie im Fenster "OffRamp1-Eigenschaften " die folgenden Eigenschaften:
Klicken Sie auf die Name-Eigenschaft , und geben Sie dann EmailNAOrderDoc ein.
Klicken Sie in der Dropdownliste "Extender " auf Off-Ramp ESB Extender.
Klicken Sie in der Dropdownliste "BizTalk Application" auf "GlobalBank.ESB".
Klicken Sie in der Dropdownliste " Port senden " auf "DynamicResolutionOneWay".
Ziehen Sie aus der Toolbox ein Modellelement des Reiseroutendiensts auf die Entwurfsoberfläche, und platzieren Sie es dann zwischen dem RouteMessageEmail-Modellelement und dem EmailNAOrderDoc-Modellelement . Konfigurieren Sie im Fenster " ItineraryService1-Eigenschaften " die folgenden Eigenschaften:
Klicken Sie auf die Name-Eigenschaft , und geben Sie " SendPortFilter" ein.
Klicken Sie in der Dropdownliste "Itinerary Service Extender" auf Off-Ramp Extender.
Erweitern Sie in der Dropdownliste Off-Ramp, EmailNAOrderDoc, und klicken Sie dann auf Send Handler.
Klicken Sie in der Toolbox auf "Verbinder". Ziehen Sie eine Verbindung aus dem RouteMessageEmail-Modellelement in das SendPortFilter-Modellelement .
Klicken Sie in der Toolbox auf "Verbinder". Ziehen Sie eine Verbindung aus dem SendPortFilter-Modellelement in das EmailNAOrderDoc-Modellelement .
So exportieren Sie das Modell für die Verwendung mit dem Reiserouten-Testclient.
Klicken Sie in Visual Studio mit der rechten Maustaste auf die Entwurfsoberfläche der LdapResolution-Reiseroute , und klicken Sie dann auf "Modell exportieren".
Hinweis
Die XML-Version der Reiseroute wird in Visual Studio geöffnet.
Speichern Sie alle Projektartefakte.
Navigieren Sie im Windows-Explorer zu C:\HowTos\Itineraries and notice the creation of your itinerary XML (LdapResolution.xml).
Die Reiseroute testen
Öffnen Sie die Beispielanwendung "Itinerary Test Client" mithilfe der Verknüpfung, die während der Voraussetzungen für die Entwicklungsaktivitäten erstellt wurde (C:\HowTos\ESB.Itinerary.Test.exe - Verknüpfung).
Deaktivieren Sie im Testclient "Reiseroute" das Kontrollkästchen "WCF-Dienst verwenden ", und klicken Sie dann auf " Reiseroute laden".
Navigieren Sie im Dialogfeld "Itinerary-Datei öffnen" zu "C:\HowTos\Itineraries". Wählen Sie LdapResolution.xmlaus, und klicken Sie dann auf "Öffnen ", um die Reiseroute zu laden.
Klicken Sie auf "OK ", um die Nachricht "Route erfolgreich geladen " zu löschen.
Klicken Sie im Testclient der Reiseroute auf die Schaltfläche mit den Auslassungspunkten (...) neben dem Feld "Nachricht laden".
Navigieren Sie im Dialogfeld " XML-Dokument zum Laden auswählen " zu "C:\HowTos". Wählen Sie NAOrderDoc.xmlaus, und klicken Sie dann auf "Öffnen ", um die Testnachricht zu laden.
Klicken Sie auf die Schaltfläche " Anforderung senden ". Wenn der Test abgeschlossen ist, klicken Sie auf "OK ", um die angezeigte Bestätigung zu schließen.
Öffnen Sie Microsoft Outlook Express (oder den E-Mail-Client Ihrer Wahl), und überprüfen Sie die Zustellung der Nachricht an die E-Mail von John Evans.
Zusätzliche Ressourcen
Weitere Informationen finden Sie in folgenden verwandten Themen: