Freigeben über


MQSSendPipelineComponent (BizTalk Server-Beispiel)

In diesem Beispiel wird veranschaulicht, wie eine Pipelinekomponente geschrieben wird, die einen Satz von MQSeries-Eigenschaftswerten aus einer XML-Datei liest und diese auf eine Nachricht anwendet.

Ziel des Beispiels

Dieses Beispiel besteht aus zwei Visual Studio-Projekten, einem Pipelinekomponentenprojekt und einem Pipelineprojekt, das die Pipelinekomponente verwendet.

Speicherort dieses Beispiels

  • <SamplesPath>\AdaptersUsage\MQSeriesAdapter\MQSSendPipelineComponent\SetMQSeriesHeaderPropertyComponent

  • <SamplesPath>\AdaptersUsage\MQSeriesAdapter\MQSSendPipelineComponent\SetMQSeriesHeaderPropertyPipeline

    In der folgenden Tabelle werden die Dateien in diesem Beispiel samt Zweck beschrieben.

File Beschreibung
SetMQSeriesHeaderPropertyComponent\SetMQSeriesHeaderPropertyComponent.sln,

SetMQSeriesHeaderPropertyComponent\SetMQSeriesHeaderPropertyComponent.csproj
Die Projekt- und Projektmappendateien für die Pipelinekomponente.
SetMQSeriesHeaderPropertyComponent\CSetMQSeriesHeaderPropertyComponent.cs Die Visual C#®-Quelldatei für die Pipelinekomponente.
SetMQSeriesHeaderPropertyComponent\SetMQSMQMDHdrProps.xml Die von der Pipelinekomponente gelesenen und verwendeten MQSeries-Eigenschaften.
SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.btproj,

SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.sln
Die Projekt- und Projektmappendateien für die BizTalk-Pipeline.
SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.snk Die Schlüsseldatei mit starker Benennung für das BizTalk-Pipelineprojekt.
SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.btp Die BizTalk Server Pipeline.

Verwenden dieses Beispiels

Gehen Sie folgendermaßen vor, um die Anwendung zu erstellen:

  1. Erstellen Sie die Ordner für die Anwendung.

  2. Ändern und kompilieren Sie das Visual Studio-Projekt für die Pipelinekomponente.

  3. Kopieren Sie die kompilierte Assembly und die Headerdatei in die entsprechenden Ordner.

  4. Ändern Sie das Visual Studio-Projekt für die BizTalk Server Pipeline.

  5. Kompilieren und bereitstellen Sie das BizTalk Server Pipelineprojekt.

  6. Richten Sie einen BizTalk Server Empfangsspeicherort ein.

  7. Erstellen Sie eine MQSeries-Warteschlange.

  8. Richten Sie einen Sendeport ein.

  9. Aktivieren Sie den Empfangsspeicherort, und starten Sie den Sendeport.

Erstellen der Ordner für die Anwendung

Durch dieses Verfahren werden die entsprechenden Ordner für die Anwendung erstellt.

So erstellen Sie Ordner für die Anwendung

  1. Erstellen Sie einen Ordner mit dem Namen temp auf Ihrem Laufwerk C:\, falls er noch nicht vorhanden ist.

  2. Erstellen Sie einen Ordner unter dem Verzeichnis C:\temp mit dem Namen Pickup3.

Ändern und Kompilieren des Projekts für die Pipelinekomponente

Mit diesem Verfahren wird das Visual Studio-Projekt für die Pipelinekomponente geändert und kompiliert.

So ändern und kompilieren Sie das Projekt für die Pipelinekomponente

  1. Doppelklicken Sie auf die Projektmappendatei SetMQSeriesHeaderPropertyComponent\SetMQSeriesHeaderPropertyComponent.sln , um die Projektmappe in Visual Studio zu öffnen.

  2. Doppelklicken Sie auf die Klassendatei CSetMQSeriesHeaderPropertyComponent.cs , um die Klassendatei in Visual Studio zu öffnen.

  3. Suchen Sie nach der Variablen samplesDir, und überprüfen Sie, ob diese Variable auf den Speicherort C:\temp festgelegt ist.

  4. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Projektmappe, und klicken Sie auf Erstellen. Dadurch wird das Projekt in eine DLL kompiliert, die sich im Verzeichnis SetMQSeriesHeaderPropertyComponent\SetMQSeriesHeaderPropertyComponent\bin\Debug\ befindet.

Kopieren der Assembly und der Headerdatei in entsprechende Ordner

Durch dieses Verfahren werden die kompilierte Assembly und die Headerdatei in die entsprechenden Ordner kopiert.

So kopieren Sie die kompilierte Assembly und die Headerdatei in die entsprechenden Ordner

  1. Kopieren Sie die kompilierte Assembly SetMQSeriesHeaderPropertyComponent.dll in den Ordner BizTalk-Pipelinekomponenten. Der Standardspeicherort für den BizTalk-Pipelinekomponentenordner ist \Programme (x86)\Microsoft BizTalk Server <VERSION-Pipelinekomponenten>.

  2. Kopieren Sie die MQHeader-Eigenschaftendatei SetMQSMQMDHdrProps.xml in das Verzeichnis C:\temp .

Ändern des Projekts für die BizTalk Server-Pipeline

Mit diesem Verfahren wird das Visual Studio-Projekt für die BizTalk Server-Pipeline geändert.

So ändern Sie das Projekt für die BizTalk Server-Pipeline

  1. Öffnen Sie in Visual Studio die Projektmappe, indem Sie auf die Projektmappendatei SetMQSeriesHeaderPropertyPipeline\SetMQSeriesHeaderPropertyPipeline.sln doppelklicken.

  2. Erstellen Sie eine Schlüsseldatei mit starkem Namen für das Projekt. Führen Sie hierzu die folgenden Schritte aus:

    1. Öffnen Sie die Visual Studio-Eingabeaufforderung.

    2. Ändern Sie verzeichnisse in <SamplesPath>\AdaptersUsage\MQSeriesAdapter\MQSSendPipelineComponent.

    3. Geben Sie folgenden Pfad ein:

      sn -k MQSSendPipelineComponent.snk

    4. Drücken Sie die EINGABETASTE. Dadurch wird die Schlüsseldatei erstellt.

  3. Klicken Sie in Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und klicken Sie auf Eigenschaften, um project Designer für das Projekt zu starten (im mittleren Fenster).

    1. Klicken Sie im Designer Projekt auf die Registerkarte Signatur.

    2. Wählen Sie im rechten Bereich die Option Assembly signieren aus.

    3. Klicken Sie auf die Dropdownliste für die Option Schlüsseldatei mit starkem Namen auswählen , und klicken Sie dann auf Durchsuchen.

    4. Navigieren Sie zu <SamplesPath>\AdaptersUsage\MQSeriesAdapter\MQSSendPipelineComponent\MQSSendPipelineComponent.snk, und klicken Sie auf Öffnen.

  4. Die zuvor erstellte Pipelinekomponente wurde bereits der Pre-Assemble-Phase dieses Pipelineprojekts hinzugefügt. Wenn diese Komponente noch nicht hinzugefügt wurde, müssen Sie die folgenden Schritte ausführen, um sie hinzuzufügen:

    1. Klicken Sie in der Visual Studio-IDE auf der linken Seite auf die Registerkarte Toolbox .

    2. Klicken Sie mit der rechten Maustaste auf die Toolbox, und klicken Sie dann auf Elemente auswählen.

    3. Klicken Sie im Dialogfeld Toolboxelemente auswählen auf die Registerkarte BizTalk-Pipelinekomponenten , wählen Sie die Komponente Benutzerdefinierte Komponente zum Festlegen von MQseries-Headereigenschaftenaus, und klicken Sie dann auf OK.

    4. Ziehen Sie die Benutzerdefinierte Komponente, um die MQseries-Headereigenschaftenkomponenteauf die Pre-Assemble-Phase dieser Pipeline festzulegen.

Kompilieren und Bereitstellen des Pipelineprojekts

Mit diesem Verfahren wird das BizTalk Server-Pipelineprojekt kompiliert und bereitgestellt.

So kompilieren Sie das Pipelineprojekt und stellen es dann bereit

  1. Klicken Sie im fenster Projektmappen-Explorer mit der rechten Maustaste auf die Projektmappe, und klicken Sie dann auf Projektmappe bereitstellen. Dadurch wird die Projektmappe erstellt und die Assembly für die BizTalk-Verwaltungsdatenbank bereitgestellt.

  2. Vergewissern Sie sich, dass die Assembly in der BizTalk-Verwaltungsdatenbank bereitgestellt wurde:

    1. Öffnen Sie die BizTalk-Verwaltungskonsole.

    2. Klicken Sie, um die BizTalk-Gruppe [<Servername>:<Verwaltungsdatenbank>] zu erweitern, und klicken Sie dann, um den Ordner Assemblys zu erweitern.

      Die bereitgestellte Pipelineassembly sollte im Ordner Assemblys sichtbar sein.

Erstellen des Empfangsspeicherorts

Mit diesem Verfahren wird ein BizTalk Server Empfangsspeicherort erstellt.

So erstellen Sie den Empfangsspeicherort

  1. Klicken Sie in der BizTalk Server Verwaltungskonsole mit der rechten Maustaste auf Empfangsports, zeigen Sie auf Neu, und klicken Sie dann auf Unidirektionale Empfangsport.

  2. Geben Sie im Dialogfeld Eigenschaften des unidirektionalen Empfangsports im Feld Name den Namen "MQReply" ein, und klicken Sie auf OK.

  3. Klicken Sie im linken Bereich auf die Registerkarte Empfangsspeicherorte , und klicken Sie dann auf Neu.

  4. Geben Sie im Dialogfeld Eigenschaften des Empfangsspeicherorts im Feld Name den Namen "ReceiveFile" ein.

  5. Wählen Sie im Feld Transporttypdie Option DATEI aus.

  6. Wählen Sie im Feld Empfangshandler die Option BizTalkServerAnwendung aus.

  7. Wählen Sie im Feld Empfangspipelinedie Option Microsoft.BizTalk.DefaultPipelines.PassThruReceive aus.

  8. Geben Sie im Feld Empfangsordner "C:\temp\Pickup3" ein.

  9. Geben Sie im Feld Dateimaske den Namen "*.*" ein.

  10. Klicken Sie auf OK, und klicken Sie dann erneut auf OK , um das Dialogfeld Eigenschaften des Empfangsspeicherorts zu beenden.

Erstellen einer MQSeries-Warteschlange mithilfe von MQSeries Explorer

Wenn Sie über die erforderlichen Berechtigungen für die Installation von MQSeries Server für Windows verfügen, können Sie die MQSeries-Warteschlange über die Adapterdialogfelder erstellen und dieses nächste Verfahren überspringen.

Verfügen Sie nicht über den erforderlichen Zugriff, können Sie die Warteschlange über das folgende Verfahren mithilfe von IBM WebSphere MQ Explorer erstellen.

So erstellen Sie eine MQSeries-Warteschlange mithilfe von MQSeries Explorer

  1. Klicken Sie auf Start, zeigen Sie auf Programme, zeigen Sie auf IBM WebSphere MQ, und klicken Sie dann auf WebSphere MQ Explorer.

  2. Doppelklicken Sie auf Warteschlangen-Manager, und doppelklicken Sie dann auf den Standardwarteschlangen-Manager. Der Standardwarteschlangen-Manager heißt in der Regel QM_<machine_name> wobei machine_name der Name Ihres Computers ist.

  3. Klicken Sie mit der rechten Maustaste auf Warteschlangen, zeigen Sie auf Neu, und klicken Sie dann auf Lokale Warteschlange.

  4. Geben Sie im Dialogfeld Lokale Warteschlange erstellen unter Warteschlangenname die Zeichenfolge SETHEADER ein, und klicken Sie dann auf OK.

Erstellen des Sendeports und der MQSeries-Warteschlange

Durch dieses Verfahren wird der Sendeport für die Ausgabenachricht erstellt. Die MQSeries-Warteschlange wird auch beim Erstellen des Sendeports erstellt, sofern er nicht bereits erstellt wurde.

So erstellen Sie den Sendeport und die MQSeries-Warteschlange

  1. Klicken Sie mit der rechten Maustaste auf Sendeports, zeigen Sie auf Neu, und klicken Sie dann auf Statischer unidirektionale Sendeport.

  2. Geben Sie im Dialogfeld Porteigenschaften senden im Feld Name den Namen "MQSolicitResponse" ein.

  3. Wählen Sie im Feld Transporttyp die Option MQSeries aus.

  4. Wählen Sie im Feld Pipeline sendendie Option SetMQSeriesHeaderPropertyPipeline.SetMQSeriesHeadersSendPipeline aus.

  5. Fügen Sie unter Filter einen neuen Eintrag mit den folgenden Name-Wert-Paaren hinzu:

    • Legen Sie Eigenschaft auf "BTS. ReceivePortName".

    • Legen Sie Operator auf "==" fest.

    • Legen Sie Value auf "ReceiveFile" fest.

      Hinweis

      Dadurch wird festgelegt, dass der Sendeport Nachrichten abonniert, die am Empfangsport ReceiveFile eintreffen.

  6. Klicken Sie auf Transport.

  7. Klicken Sie im Feld Adresse (URI) auf die Schaltfläche mit den Auslassungspunkten (...).

  8. Klicken Sie im Dialogfeld MQSeries-Transporteigenschaften im Feld Warteschlangendefinition auf die Schaltfläche mit den Auslassungspunkten (...).

  9. Geben Sie im Dialogfeld Warteschlangendefinition im Feld Servername den Computernamen ein.

  10. Wählen Sie im Feld Warteschlangen-Manager den Standardwarteschlangen-Manager aus.

  11. Geben Sie im Feld Warteschlange "SETHEADER" ein, und klicken Sie dann auf Exportieren.

  12. Klicken Sie im Dialogfeld Exportieren auf Warteschlange erstellen, und klicken Sie dann auf OK oder Fertig , bis Sie das Dialogfeld alle beendet haben.

Aktivieren des Empfangsspeicherorts und Starten des Sendeports

Durch dieses Verfahren wird der Empfangsspeicherort aktiviert und der Sendeport gestartet.

So aktivieren Sie den Empfangsspeicherort und starten den Sendeport

  1. Klicken Sie in der BizTalk Server-Verwaltungskonsole auf Empfangsports.

  2. Klicken Sie im Detailbereich mit der rechten Maustaste auf den MQIn-Empfangsspeicherort , und klicken Sie auf Aktivieren.

  3. Klicken Sie im Detailbereich mit der rechten Maustaste auf den Sendeport SetMQHeader , und klicken Sie auf Start.

Testen der Anwendung

Dieses Verfahren testet die Anwendung.

So testen Sie die Anwendung

  1. Legen Sie eine Datei im Ordner C:\Temp\Pickup3 ab.

  2. Starten Sie WebSphere MQ Explorer, und doppelklicken Sie dann auf die Warteschlange SETHEADER, um die Nachricht(en) in der Warteschlange SETHEADER zu untersuchen.

    Führen Sie die folgenden Schritte aus, um alle Kontexteigenschaften für die Nachrichten in der Warteschlange SETHEADER anzuzeigen:

    1. Doppelklicken Sie auf die SETHEADER-Warteschlange , um das Dialogfeld Meldungsbrowser anzuzeigen.

    2. Klicken Sie im Dialogfeld Nachrichtenbrowser auf Spalten , um das Dialogfeld Spalten für Nachrichten ein-/ausblenden anzuzeigen.

    3. Doppelklicken Sie unter Verfügbare Spalten auf jeden Eintrag, um ihn im Dialogfeld Meldungsbrowser sichtbar zu machen, und klicken Sie dann auf OK.

  3. Die Nachrichtenkontexteigenschaften für jede Nachricht sollten im Dialogfeld Nachrichtenbrowser angezeigt werden.

Weitere Informationen

Beispiele für MQSeries-Adapter