Mustercode 'Video Rental' ausführen

Bevor Sie starten, müssen Sie den Mustercode 'Video Rental' importieren und implementieren. Wenn Sie den Mustercode importiert haben, werden unter Umständen einige Fehler angezeigt, die sich auf die .msgflow-Dateien beziehen. Diese Warnungen beziehen sich auf Datenbanken und beeinträchtigen die Ausführung des Mustercodes nicht. Sie erhalten möglicherweise auch eine Warnung im Toolkit zur Prüfung; diese Warnung bezieht sich auf den Nachrichtensatz und beeinträchtigt die Ausführung des Mustercodes nicht.

In diesem Thema wird erläutert, wie Eingabenachrichten im CWF-, XML- und TDS-Format durch den Video-Nachrichtenfluss geleitet werden. Darüber hinaus wird erklärt, wie Sie überprüfen können, ob der Mustercode ordnungsgemäß funktioniert und das richtige Ergebnis erzielt wird.

Sollten bei der Ausführung des Mustercodes Probleme auftreten, lesen Sie den Abschnitt Probleme bei der Ausführung von Mustercodes beheben in der WebSphere Message Broker-Dokumentation.

Mustercode ausführen

Um den Mustercode auszuführen, müssen Sie Nachrichten in die Eingabewarteschlangen stellen und aus der Ausgabenachrichtenwarteschlange abrufen. Zu Beginn müssen Sie eine der Nachrichten in die entsprechende Eingabewarteschlange einreihen (siehe folgende Tabelle). Wenn Sie den Mustercode richtig konfiguriert haben, wird eine Antwortnachricht in die Warteschlange VIDEO_OUT gestellt. Anschließend können Sie den Prozess für die anderen Nachrichten wiederholen.

Datei Eingabewarteschlange
videomsgcwf.mbtest VIDEO_CWF_IN
videomsgxml.mbtest VIDEO_XML_IN
videomsgtds.mbtest VIDEO_TDS_IN

So reihen Sie eine Nachricht in die relevante Warteschlange ein:

  1. Erweitern Sie in der Ansicht 'Brokerentwicklung' das Projekt 'Video Message Flows' und klicken Sie anschließend auf eine der .mbtest-Dateien im Verzeichnis Flow Tests, um sie im Testclient zu öffnen.
  2. Klicken Sie im Testclient auf In Warteschlange einreihen.
  3. Klicken Sie auf Nachricht senden, um die Nachricht in die Eingabewarteschlange zu stellen.

So rufen Sie eine Nachricht aus der Warteschlange VIDEO_OUT ab:

  1. Klicken Sie im Testclient auf Aus Warteschlange entfernen.
  2. Klicken Sie auf Nachricht abrufen, um eine Nachricht aus der Warteschlange 'VIDEO_OUT' zu lesen.

Erläuterung der Ergebnisse

Wenn Sie eine Nachricht durch den Nachrichtenfluss leiten, erhalten Sie in der Warteschlange VIDEO_OUT eine Nachricht. In der Nachricht hat die folgende Umwandlung stattgefunden:

Optional: Änderung des Werts im Ausweisfeld

In den drei Eingabenachrichten enthält das Ausweisfeld (ID) einen Buchstaben, der für die Art und Weise steht, wie sich der Kunde ausgewiesen hat:

Das Feld 'IdGroup' in der Nachricht gibt die Nummer des Reisepasses, Führerscheins oder der Kreditkarte an. Um zu erfahren, warum die Nachrichten auf diese Weise aufgebaut sind, lesen Sie den Abschnitt Die Struktur des Nachrichtenmodells.

In den XML- und TDS-Nachrichten hat sich der Kunde mithilfe eines Reisepasses ausgewiesen. In der CWF-Nachricht wurde hierzu eine Kreditkarte verwendet. Wenn Sie sehen möchten, welche Auswirkungen die Änderung der Ausweisungsart in 'Führerschein' hat, nehmen Sie die Änderungen wie in der folgenden Tabelle angezeigt vor und reihen Sie anschließend die Nachrichten wie üblich in die entsprechende Eingabewarteschlangen ein. Um die Dateien zu bearbeiten, müssen Sie in der Ansicht 'Brokerentwicklung' doppelt auf die entsprechende Datei klicken. Die Datei wird in der Editoransicht geöffnet. Wenn Sie Änderungen vornehmen, müssen Sie Folgendes berücksichtigen:

Dateiname Alter Wert Neuer Wert
videomsgxml.mbtest <ID>P</ID> <ID>D</ID>
<PassportNo>J123456TT</PassportNo> <DrivingLicenseNo>xxxxxx</DrivingLicenseNo>
videomsgtds.mbtest &ID:P&PassportNo:J123456TT &ID:D&DrivingLicenseNo:xxxxxx
videomsgcwf.mbtest C (zwischen Salisbury und J123456TT) D

 

Optional: Traceverarbeitung für den Nachrichtenfluss

Wenn Sie testen möchten, wie der CWF-Parser eine unaufgelöste Auswahl verarbeitet, können Sie einen Traceknoten für den Nachrichtenfluss durchführen. Weitere Informationen zur Handhabung einer unaufgelösten Auswahl finden Sie im Abschnitt Informationen zum Nachrichtensatz für den Mustercode 'Video Rental'.

Gehen Sie folgendermaßen vor, um die Verarbeitung einer unaufgelösten Auswahl zu testen:

  1. Fügen Sie zwischen dem Knoten 'Extract Fields' und dem VIDEO_OUT-Knoten einen Traceknoten ein, wobei die Eigenschaft 'Pattern' auf ${Root} gesetzt sein muss.
  2. Leiten Sie die Datei videocwfmsg.mbtest durch den Nachrichtenfluss und führen Sie einen Trace für den Nachrichtenfluss aus. Die Nachrichtenbaumstruktur im Trace enthält die ID-Nummer im richtigen Auswahlfeld. Der folgende Tracebereich bezieht sich auf die Verarbeitung unaufgelöster Auswahlfelder:
    (0x0100001B):MRM = (
      (0x01000013):Name = (
        (0x0300000B):LastName = 'Bloggs '
        (0x0300000B):Title = 'Mr '
        (0x0300000B):FirstName = 'Fred '
    
      )
      (0x01000013)http://www.ibm.com/AddressDetails:Address = (
        (0x0300000B):HouseNo = 12
        (0x0300000B):Street = 'Willow Avenue '
        (0x0300000B):Town = 'Salisbury '
      )
      (0x0300000B):ID = 'C'
      (0x0300000B):CreditCardNo = 'J123456TT '
      (0x01000013)http://www.ibm.com/BorrowedDetails:Borrowed = (
        (0x0300000B):VideoTitle = 'Fast Cars '
        (0x0300000B):DueDate = TIMESTAMP '2003-05-23 00:00:00'
        (0x0300000B):Cost = 3.00
      )
      (0x01000013)http://www.ibm.com/BorrowedDetails:Borrowed = (
        (0x0300000B):VideoTitle = 'Cut To The Chase '
        (0x0300000B):DueDate = TIMESTAMP '2003-05-23 00:00:00'
        (0x0300000B):Cost = 3.75
      )
      (0x0300000B):Magazine = TRUE

    Hinweis: Im Trace werden die Felder 'Title' (Titel), 'FirstName' (Vorname) und 'LastName' (Nachname) nicht in der gleichen Reihenfolge angezeigt wie in der CWF-Eingabenachricht. In der Eingabenachricht werden die Felder in der Reihenfolge 'Title', 'FirstName' und 'LastName' angezeigt, wenn die Nachricht jedoch syntaktisch analysiert wird, setzt der Parser das Attribut 'LastName' in der logischen Baumstruktur über die Name-/Wert-Paare, die die untergeordneten Elemente ('Title' und 'FirstName') von 'NameType' repräsentieren.
  3. Ändern Sie in der Datei videocwfmsg.mbtest den Wert im Feld 'ID' von C in P oder D.
  4. Leiten Sie die geänderte Nachricht durch den Nachrichtenfluss, und beobachten Sie im Traceknoten die verschiedenen Ergebnisse.

Zurück zum Beginn des Mustercodes