Vorgehensweise: Auflösen eines Dienstendpunkts mithilfe einer UDDI-Kategoriensuche

Zielsetzung

In diesem Abschnitt wird veranschaulicht, wie Sie die ESB-Designer domänenspezifische Sprache (DOMAIN-Specific Language, DSL) verwenden, um einen routenbasierten Verteiler zu erstellen, der den UdDI 3-Resolver (Universal Description, Discovery and Integration) verwendet, um einen Dienstendpunkt mithilfe einer Kategoriesuche zu finden. In diesem Szenario ist der Dienstendpunkt ein in UDDI veröffentlichter Dateiendpunkt.

In diesem How-to-Thema führen Sie die folgenden Schritte aus:

  • Erstellen Sie einen Routingzettel für die Reiseroute, um einen Dienstendpunkt aufzulösen.

  • Konfigurieren Sie die Reiseroute, um die Nachricht mithilfe eines UDDI 3-Resolvers an einen Dienstendpunkt weiterzuleiten.

  • Testen Sie die Reiseroute mithilfe der Beispielanwendung Für den Programmablauftestclient.

Voraussetzungen

Die Verfahren in diesem How-to-Thema erfordern den Abschluss der Voraussetzungen für die Entwicklungsaktivitäten.

Schritte

So erstellen Sie ein Reiseroutenmodell

  1. Öffnen Sie in Visual Studio C:\HowTos\Patterns\Patterns.sln.

  2. Klicken Sie Projektmappen-Explorer mit der rechten Maustaste auf das Projekt ItineraryLibrary, zeigen Sie auf Hinzufügen, und klicken Sie dann auf Neue Reiseroute.

  3. Geben Sie im Dialogfeld Neues Element hinzufügen den Namen UDDI3CategorySearch in das Feld Name ein, und klicken Sie dann auf Hinzufügen.

So konfigurieren Sie die Eigenschaften der Reiseroute

  1. Klicken Sie in Visual Studio auf die Entwurfsoberfläche von UDDI3CategorySearch.itinerary. Konfigurieren Sie im UDDI3CategorySearch-Eigenschaftenfenster die folgenden Eigenschaften:

    1. Klicken Sie in der Dropdownliste Modellexporter auf XML-Programmablaufexporter.

    2. Klicken Sie im Abschnitt Extendereinstellungen neben der Eigenschaft Itinerary-XML-Datei auf die Schaltfläche mit den Auslassungspunkten (...).

    3. Geben Sie im Dialogfeld XML-Datei auswählenden Namen C:\HowTos\Itineraries\UDDI3CategorySearch in das Feld Dateiname ein, und klicken Sie dann auf Speichern.

      Hinweis

      In diesem Schritt können Sie die Reiseroute als XML an einen lokalen Dateispeicherort exportieren. Durch exportieren einer Reiseroute in einen lokalen Dateispeicherort statt in die Reiseplandatenbank ermöglicht das Testen der Reiseroute mithilfe der ESB-Testclientanwendung. Sie schließen diesen Prozess später in diesem Thema ab.

So definieren Sie die Struktur der Reiseroute

  1. Ziehen Sie aus der Toolbox ein On-Ramp-Modellelement auf die Entwurfsoberfläche. Konfigurieren Sie im OnRamp1-Eigenschaftenfenster die folgenden Eigenschaften:

    1. Klicken Sie auf die Name-Eigenschaft , und geben Sie dann ReceiveNAOrder ein.

    2. Klicken Sie in der Dropdownliste Extender auf On-Ramp ESB Extender ( On-Ramp ESB Extender).

    3. Klicken Sie in der Dropdownliste BizTalk-Anwendung auf Microsoft.Practices.ESB.

    4. Klicken Sie in der Dropdownliste Empfangsport auf OnRamp.Itinerary.

  2. Ziehen Sie aus der Toolbox ein Modellelement des Programmplanungsdiensts auf die Entwurfsoberfläche. Konfigurieren Sie im Eigenschaftenfenster ItineraryService1 die folgenden Eigenschaften:

    1. Klicken Sie auf die Name-Eigenschaft , und geben Sie categoryRoute ein.

    2. Klicken Sie in der Dropdownliste Itinerary Service Extender auf Messaging Extender.

    3. Erweitern Sie in der Dropdownliste Container den Eintrag ReceiveNAOrder, und klicken Sie dann auf Empfangshandler.

    4. Klicken Sie in der Dropdownliste Dienstname auf Microsoft.Practices.ESB.Services.Routing.

  3. Klicken Sie mit der rechten Maustaste auf die Resolver-Auflistung des CategoryRoute-Modellelements , und klicken Sie dann auf Neuen Resolver hinzufügen. Konfigurieren Sie im Eigenschaftenfenster Resolver1 die folgenden Eigenschaften:

    1. Klicken Sie auf die Name-Eigenschaft , und geben Sie categorySearch ein.

    2. Klicken Sie in der Dropdownliste Resolverimplementierung auf Uddi3 Resolver-Erweiterung.

    3. Klicken Sie in der Dropdownliste Resolver Moniker auf UDDI3.

    4. Klicken Sie auf die Eigenschaft Kategoriesuche , und klicken Sie dann auf die Schaltfläche mit den Auslassungspunkten (...).

    5. Klicken Sie im Dialogfeld Name Value Property Editor auf Hinzufügen.

    6. Klicken Sie auf die Name-Eigenschaft , und geben Sie uddi:esb:biztalkapplication ein.

    7. Klicken Sie auf die Value-Eigenschaft , und geben Sie dann GlobalBank.ESB ein.

    8. Klicken Sie im Dialogfeld Name Value Property Editor auf Hinzufügen.

    9. Klicken Sie auf die Name-Eigenschaft , und geben Sie uddi:esb:portname ein.

    10. Klicken Sie auf die Value-Eigenschaft , und geben Sie dann OrderFileServicev3 ein.

    11. Klicken Sie im Dialogfeld Name Value Property Editor auf Hinzufügen.

    12. Klicken Sie auf die Name-Eigenschaft , und geben Sie uddi:esb:version ein.

    13. Klicken Sie auf die Value-Eigenschaft , und geben Sie dann 1 ein.

    14. Klicken Sie auf OK , um das Dialogfeld Namenswert-Eigenschaften-Editor zu schließen.

  4. Klicken Sie mit der rechten Maustaste auf den Resolver CategorySearch , und klicken Sie dann auf Konfiguration des Resolvers testen.

    Hinweis

    Überprüfen Sie die im Fenster Ausgabe angezeigte Ausgabe.

  5. Klicken Sie in der Toolbox auf Connector. Ziehen Sie eine Verbindung aus dem ReceiveNAOrder-Modellelement in das CategoryRoute-Modellelement .

  6. Ziehen Sie aus der Toolbox ein Off-Ramp-Modellelement auf die Entwurfsoberfläche, und platzieren Sie es dann rechts neben dem CategoryRoute-Modellelement . Konfigurieren Sie im offRamp1-Eigenschaftenfenster die folgenden Eigenschaften:

    1. Klicken Sie auf die Name-Eigenschaft , und geben Sie sendNAOrder ein.

    2. Klicken Sie in der Dropdownliste Extender auf OFF-Ramp ESB Extender.

    3. Klicken Sie in der Dropdownliste BizTalk-Anwendung auf GlobalBank.ESB.

    4. Klicken Sie in der Dropdownliste Port senden auf DynamicResolutionOneWay.

  7. Ziehen Sie aus der Toolbox ein Modellelement des Itinerary Service auf die Entwurfsoberfläche, und platzieren Sie es dann zwischen dem CategoryRoute-Modellelement und dem SendNAOrder-Modellelement . Konfigurieren Sie im Eigenschaftenfenster ItineraryService1 die folgenden Eigenschaften:

    1. Klicken Sie auf die Name-Eigenschaft , und geben Sie sendPortFilter ein.

    2. Klicken Sie in der Dropdownliste Itinerary Service Extender auf Off-Ramp Extender.

    3. Erweitern Sie in der Dropdownliste Off-Ramp den Eintrag SendNAOrder, und klicken Sie dann auf Handler senden.

  8. Klicken Sie in der Toolbox auf Connector. Ziehen Sie eine Verbindung aus dem CategoryRoute-Modellelement auf das SendPortFilter-Modellelement .

  9. Klicken Sie in der Toolbox auf Connector. Ziehen Sie eine Verbindung aus dem SendPortFilter-Modellelement auf das SendNAOrder-Modellelement .

So exportieren Sie das Modell für die Verwendung mit dem Programmablauftestclient

  1. Klicken Sie in Visual Studio mit der rechten Maustaste auf die Entwurfsoberfläche der UdDI3CategorySearch-Reiseroute , und klicken Sie dann auf Modell exportieren.

    Hinweis

    Die XML-Version der Reiseroute wird in Visual Studio geöffnet.

  2. Speichern Sie alle Projektartefakte.

  3. Navigieren Sie in Windows Explorer zu C:\HowTos\Itineraries, und beachten Sie die Erstellung Ihrer Reiserouten-XML (UDDI3CategorySearch.xml).

So testen Sie die Reiseroute

  1. Öffnen Sie die Beispielanwendung "Itinerary Test Client", indem Sie die Verknüpfung verwenden, die während der Voraussetzungen für die Entwicklungsaktivitäten (C:\HowTos\ESB.Itinerary.Test.exe - Verknüpfung) erstellt wurde.

  2. Deaktivieren Sie im Programmablauftestclient das Kontrollkästchen WCF-Dienst verwenden , und klicken Sie dann auf Reiseroute laden.

  3. Navigieren Sie im Dialogfeld Reiseroutendatei öffnen zu C:\HowTos\Itineraries. Wählen Sie UDDI3CategorySearch.xmlaus, und klicken Sie dann auf Öffnen , um die Reiseroute zu laden.

  4. Klicken Sie auf OK , um die Meldung Route erfolgreich geladen zu löschen.

  5. Klicken Sie im Programmablauftestclient auf die Schaltfläche mit den Auslassungspunkten (...) neben dem Feld Nachricht laden .

  6. Navigieren Sie im Dialogfeld Zu ladende XML-Dokument auswählen zu C:\HowTos. Wählen Sie NAOrderDoc.xml aus, und klicken Sie dann auf Öffnen , um die Testnachricht zu laden.

  7. Klicken Sie auf die Schaltfläche Anforderung übermitteln . Klicken Sie nach Abschluss des Tests auf OK , um die angezeigte Bestätigung zu schließen.

  8. Navigieren Sie in Windows Explorer zu C:\Projects\Microsoft.Practices.ESB\Source\Samples\DynamicResolution\Test\Filedrop\Out, und überprüfen Sie, ob die Nachricht %MessageID%.xml in das Verzeichnis geschrieben wurde.

Weitere Ressourcen

Weitere Informationen finden Sie in folgenden verwandten Themen: