Mustercode 'Connect:Direct file transfer' schrittweise ausführen
Die Testnachrichten, die für die Ausführung dieses Mustercodes verwendet werden, stellen eine Kontenüberweisung zwischen verschiedenen Bankkonten dar:
<AccountTransfer>
<TransferNumber>2</TransferNumber>
<TransferAmount>666.66</TransferAmount>
<From>
<AccountNumber>00251672</AccountNumber>
<SortCode>01-29-57</SortCode>
</From>
<To>
<AccountNumber>00145222</AccountNumber>
<SortCode>01-29-57</SortCode>
</To>
</AccountTransfer>
In diesem Szenario sendet jede Filiale (Winchester oder Eastleigh) eine solche Nachricht an die
Bankzentrale, sobald eine Kontenüberweisung stattfindet, damit die Überweisung autorisiert werden
kann. Die Filialen stellen im MQMD-Header der Nachricht außerdem eine Empfangswarteschlange für
Antworten zur Verfügung. Sobald die Zentrale die Überweisungen autorisiert, sendet sie diese an
diese Empfangswarteschlange für Antworten.
In der folgenden Tabelle sind die MQ-Warteschlangen aufgeführt, die für die Kommunikation zwischen den Filialen und der Zentrale verwendet werden.
Name der Warteschlange |
Description |
CD.SAMPLE.REQUEST |
Kontenüberweisungen, die von den Filialen zur Autorisierung an die
Zentrale gesendet werden |
CD.SAMPLE.WINCHESTER |
Autorisierte Kontenüberweisungen für die Filiale in Winchester |
CD.SAMPLE.EASTLEIGH |
Autorisierte Kontenüberweisungen für die Filiale in Eastleigh |
Mustercode ausführen
- Damit Sie verfolgen können, wie die Kontenüberweisungen schrittweise verarbeitet werden, stoppen Sie die Nachrichtenflüsse 'AuthorisingSystem.msgflow' und 'ReceiveFromAuthorisingSystem.msgflow':
- Wechseln Sie im WebSphere Message Broker Toolkit zur Perspektive 'Broker'.
- Erweitern Sie die Ausführungsgruppe CDSAMPLE in Ihrem Standardbroker und klicken Sie mit der rechten Maustaste auf den Nachrichtenfluss 'AuthorisingSystem' in der Gruppe CD Sample Authorising System Application. Klicken Sie auf Stoppen. Der Nachrichtenfluss zeigt an, dass der Nachrichtenfluss gestoppt wurde.
- Wiederholen Sie die vorherigen Schritte für den Nachrichtenfluss 'ReceiveFromAuthorisingSystem' in der Gruppe CD Sample HQ Broker Application.
- Senden Sie einige Kontenüberweisungsdatensätze an den ersten Nachrichtenfluss
SendToAuthorisingSystem. Der Nachrichtenfluss sammelt die
Kontenüberweisungen in einer Stapeldatei. Sobald der Fluss die beiden Tagesabschlussnachrichten
empfängt, wird die Stapeldatei unter Verwendung von IBM Sterling Connect:Direct (Connect:Direct) übertragen:
- Wechseln Sie im WebSphere Message Broker Toolkit in die Ansicht 'Brokerentwicklung' und
erweitern Sie die Anwendung CD Sample HQ Broker Application.
- Klicken Sie mit der rechten Maustaste auf die Datei Send Test
Messages.mbtest in der Gruppe Flow
Tests und klicken Sie dann auf Öffnen.
- Der geöffnete Testclient enthält acht Testnachrichten, die als Einreihungsereignisse vorbereitet wurden.
Bei sechs Testnachrichten handelt es sich um Kontenüberweisungsdatensätze; drei davon gehören zur Filiale in Winchester, die anderen drei zur Filiale in Eastleigh. Die ReplyToQ-Einträge im Header der Nachrichten, die aus der Filiale in Winchester stammen, unterscheiden sich von den Einträgen der Filiale in Eastleigh. Bei den übrigen beiden Nachrichten handelt es sich um Tagesabschlussnachrichten, jeweils eine für jede Filiale.
- Klicken Sie auf das erste Einreihungsereignis und erweitern Sie das Fenster 'Ausführliche Eigenschaften'.
- Überprüfen Sie im Fenster 'Ausführliche Eigenschaften' die Nachricht, die an die Zentrale gesendet wird.
- Erweitern Sie in demselben Fenster das Feld Header und klicken Sie auf den Header-Link, um die Konfigurationsansicht zu öffnen. Erweitern Sie die Gruppe MQ Message Headers und vergewissern Sie sich, dass das Feld Name der Warteschlange für Antwortnachrichten für Winchester Branch
Header den Wert CD.SAMPLE.WINCHESTER enthält.
Dies ist die Empfangswarteschlange für Antworten, an die die Zentrale den autorisierten
Kontenüberweisungsdatensatz nach seiner Verarbeitung sendet.
- Kehren Sie zum Fenster 'Ereignisse' zurück, indem Sie auf die Registerkarte Ereignisse klicken.
- Senden Sie jetzt die ersten sieben Testnachrichten, indem Sie im Fenster 'Ausführliche Eigenschaften' für die ersten sieben eingereihten Ereignisse auf Nachrichten senden klicken.
- Wenn Sie sehen möchten, ob eine Datei unter Verwendung von Connect:Direct übertragen wurde, gehen Sie zum
Dateisystem und schauen Sie im entsprechenden Verzeichnis nach. Die standardmäßigen
Downloadverzeichnisse für Connect:Direct heißen beispielsweise wie folgt:
- Unter Windows:
Verzeichnis download im
Installationsverzeichnis von IBM Sterling Connect:Direct
- Unter Linux:
Downloadverzeichnis default, das in Schritt Mustercode einrichten angegeben wurde.
Da Sie sechs Kontenüberweisungsdatensätze und nur eine Tagesabschlussnachricht gesendet haben, ist die Stapeldatei accountTransfers.rqst noch nicht vorhanden.
- Senden Sie nun die letzte Nachricht, bei der es sich um die zweite Tagesabschlussnachricht handelt:
- Wechseln Sie im WebSphere Message Broker Toolkit in die Ansicht 'Brokerentwicklung' und
erweitern Sie die Anwendung CD Sample HQ Broker Application.
- Klicken Sie mit der rechten Maustaste auf die Datei Send Test
Messages.mbtest in der Gruppe Flow
Tests und klicken Sie dann auf Öffnen.
- Klicken Sie auf das letzte Ereignis 'Enqueue Message Flow Test Event' (Nachrichtenfluss-Testereignis einreihen) und senden Sie eine Nachricht, indem Sie im Fenster 'Ausführliche Eigenschaften' auf die Schaltfläche Nachricht senden klicken.
- Einige Sekunden nach dem Versenden der Nachricht wird die Datei
accountTransfers.rqst im standardmäßigen Downloadverzeichnis des
Connect:Direct-Servers angezeigt. Dies ist die erste Stapeldatei, die vom CDOutput-Knoten an Ihren lokalen Connect:Direct-Server übertragen wurde.
Sie enthält für jeden Datensatz alle Kontenüberweisungsdatensätze und Informationen zum Namen der Empfangswarteschlange für Antworten.
- Starten Sie den Nachrichtenfluss 'AuthorisingSystem'. Dieser Nachrichtenfluss emuliert das
Autorisierungssystem vom externen Service-Provider und ruft die Stapeldatei ab und verarbeitet sie:
- Wechseln Sie im WebSphere Message Broker Toolkit zur Perspektive 'Broker'.
- Erweitern Sie die Ausführungsgruppe CDSAMPLE in Ihrem Standardbroker und klicken Sie mit der rechten Maustaste auf den implementierten Nachrichtenfluss 'AuthorisingSystem' in der Gruppe CD Sample Authorising System Application. Klicken Sie auf Starten.
- Der Nachrichtenfluss ruft nun die Stapeldatei accountTransfers.rqst ab und verarbeitet sie. Die verarbeiteten Datensätze werden in einer anderen Stapeldatei namens reply.rply gesammelt, die dann unter Verwendung eines CDOutput-Knotens übertragen wird. Die Stapeldatei accountTransfers.rqst wird gelöscht.
- Wenn Sie prüfen möchten, ob der Nachrichtenfluss die Datensätze verarbeitet hat, öffnen Sie
das standardmäßige Downloadverzeichnis des Connect:Direct-Servers. Jetzt wird die Datei
reply.rply angezeigt, die alle Kontenüberweisungsdatensätze
enthält, egal ob sie autorisiert oder nicht autorisiert wurden. Die Datei accountTransfers.rqst befindet sich nicht mehr dort, da sie gelöscht wurde.
- Starten Sie schließlich den Nachrichtenfluss 'ReceiveFromAuthorisingSystem', der die
Stapeldatei mit den autorisierten Kontenüberweisungen abruft und den Filialen antwortet:
- Wechseln Sie im WebSphere Message Broker Toolkit zur Perspektive 'Broker'.
- Erweitern Sie die Ausführungsgruppe CDSAMPLE in Ihrem Standardbroker und klicken Sie mit der rechten Maustaste auf den implementierten Nachrichtenfluss 'ReceiveFromAuthorisingSystem' in der Gruppe CD Sample HQ Broker Application. Klicken Sie auf Starten.
- Wenn Sie prüfen möchten, ob der Nachrichtenfluss die Datensätze verarbeitet hat, öffnen Sie
das standardmäßige Downloadverzeichnis des Connect:Direct-Servers. Die Datei reply.rply wurde umbenannt und weist eine aktuelle Zeitmarke auf.
- Wenn Sie die Antwortnachrichten sehen möchten, lesen Sie die WebSphere MQ-Nachrichten in den Warteschlangen CD.SAMPLE.WINCHESTER und CD.SAMPLE.EASTLIEIGH:
- Wechseln Sie im WebSphere Message Broker Toolkit in die Ansicht 'Brokerentwicklung' und
erweitern Sie die Anwendung CD Sample HQ Broker Application.
- Klicken Sie mit der rechten Maustaste auf die Datei Send Test
Messages.mbtest in der Gruppe Flow
Tests und klicken Sie dann auf Öffnen.
- Die beiden Testereignisse 'Dequeue' zur Entfernung aus Warteschlangen rufen die Nachrichten
aus den WebSphere MQ-Warteschlangen für die Filialen in Eastleigh und Winchester ab. Klicken Sie
zum Abruf einer Nachricht auf ein Testereignis des Typs 'Dequeue' und anschließend im Fenster
'Ausführliche Eigenschaften' auf die Schaltfläche Nachricht
abrufen. Sie erhalten eine Nachricht, die die autorisierte Kontenüberweisung enthält.
- Da von jeder Filiale drei Kontenüberweisungsdatensätze gesendet wurden, wiederholen Sie den
vorherigen Schritt noch zweimal, damit alle autorisierten Kontenüberweisungsdatensätze für beide
Filialen abgerufen werden.
Erwartete Ausgabenachrichten
Die erwarteten Antwortnachrichten enthalten Informationen zur Autorisierung einer
Kontenüberweisung. Die unter Eingabetestnachricht beschriebene Kontenüberweisung generiert folgende Antwort:
<AccountTransfer>
<TransferNumber>2</TransferNumber>
<Authorised>no</Authorised>
</AccountTransfer>
Zurück zum Beginn des Mustercodes