Den Nachrichtenfluss erstellen
Der Video-Nachrichtenfluss wird bereit gestellt, Sie können ihn aber, wenn Sie dies vorziehen, auch selbst erstellen.
Im Folgenden wird die Erstellung des Video-Nachrichtenflusses erläutert. Zu einigen Schritte gibt es ausführliche Erläuterungen, die Sie abrufen können, indem Sie auf den Link unterhalb des entsprechenden Schrittes klicken.
- Wechseln Sie in die Perspektive 'Brokeranwendungsentwicklung'.
- Erstellen Sie ein neues Nachrichtenflussprojekt mit der Bezeichnung 'Video-Nachrichtenflüsse'.
Weitere Informationen hierzu finden Sie im Abschnitt Ein Nachrichtenflussprojekt erstellen.
- Erstellen Sie einen neuen Nachrichtenfluss mit dem Namen 'Video_Test'. Anweisungen hierzu finden Sie unter Nachrichtenfluss erstellen.
- Fügen Sie im Nachrichtenflusseditor die in der folgenden Tabelle aufgeführten Knoten hinzu, und geben Sie diesen Knoten andere Namen. Eine Anleitung hierfür finden Sie im Abschnitt Knoten hinzufügen.
Knotentyp |
Knotenname |
MQEmpfang |
VIDEO_XML_IN |
MQEmpfang |
VIDEO_TDS_IN |
MQEmpfang |
VIDEO_CWF_IN |
MQSenden |
VIDEO_OUT |
MQSenden |
VIDEO_FAIL |
Rechnen |
Extract Fields |
- Verbinden Sie die Knoten wie in der folgenden Tabelle angegeben.
Eine Anleitung hierfür finden Sie im Abschnitt Knoten verbinden.
Anhand der Abbildung unter Informationen zum Nachrichtenfluss für das Beispielprogramm 'Video Rental' können Sie feststellen, ob die Knoten richtig miteinander verbunden wurden.
Knotenname |
Terminal |
Mit diesem Knoten verbinden |
VIDEO_XML_IN |
Fehlerterminal |
VIDEO_FAIL |
Out |
Extract Fields |
Catch |
VIDEO_FAIL |
VIDEO_TDS_IN |
Fehlerterminal |
VIDEO_FAIL |
Out |
Extract Fields |
Catch |
VIDEO_FAIL |
VIDEO_CWF_IN |
Fehlerterminal |
VIDEO_FAIL |
Out |
Extract Fields |
Catch |
VIDEO_FAIL |
Extract Fields |
Out |
VIDEO_OUT |
- Konfigurieren Sie die Knoteneigenschaften wie in der folgenden Tabelle angegeben.
Übernehmen Sie die Standardwerte für alle Eigenschaften, es sein denn, es ist ein alternativer Wert in der Tabelle aufgeführt.
Eine Anleitung hierfür finden Sie im Abschnitt Knoten konfigurieren.
Für die Knoten VIDEO_XML_IN, VIDEO_TDS_IN und VIDEO_CWF_IN müssen Sie die Eigenschaft für die Nachrichtengruppen-ID setzen. Jede Nachrichtengruppe verfügt über eine eindeutige ID. So ermitteln Sie die ID der von Ihnen erstellten Nachrichtengruppe:
- Erweitern Sie im Ressourcennavigator die Navigationsstruktur: Video Messages > Video >messageSet.mset.
- Klicken Sie doppelt auf messagetSet.mset, um diesen Eintrag zu öffnen.
- Daraufhin wird die eindeutige ID Ihrer Nachrichtengruppe im Feld 'Nachrichtengruppen-ID' angezeigt.
Knotenname |
Seite |
Eigenschaft |
Value |
VIDEO_XML_IN |
Grundeinstellung |
Name der Warteschlange |
VIDEO_XML_IN |
Default |
Nachrichtendomäne |
MRM
|
Default |
Nachrichtengruppe |
(Wählen Sie die eindeutige ID Ihrer Nachrichtengruppe aus) |
Default |
Nachrichtenart |
Customer |
Default |
Nachrichtenformat |
XML1 |
VIDEO_TDS_IN |
Grundeinstellung |
Name der Warteschlange |
VIDEO_TDS_IN |
Default |
Nachrichtendomäne |
MRM
|
Default |
Nachrichtengruppe |
(Wählen Sie die eindeutige ID Ihrer Nachrichtengruppe aus) |
Default |
Nachrichtenart |
Customer |
Default |
Nachrichtenformat |
TDS1 |
VIDEO_CWF_IN |
Grundeinstellung |
Name der Warteschlange |
VIDEO_CWF_IN |
Default |
Nachrichtendomäne |
MRM
|
Default |
Nachrichtengruppe |
(Wählen Sie die eindeutige ID Ihrer Nachrichtengruppe aus) |
Default |
Nachrichtenart |
Customer |
Default |
Nachrichtenformat |
CWF1 |
VIDEO_FAIL |
Grundeinstellung |
Name der Warteschlange |
VIDEO_FAIL |
Extract Fields |
Grundeinstellung |
ESQL-Modul |
Video_Test_Compute |
VIDEO_OUT |
Grundeinstellung |
Name der Warteschlange |
VIDEO_OUT |
- Fügen Sie der Datei 'Video_Test.esql' die folgenden ESQL-Codemodule hinzu. Sie können den ESQL-Code kopieren und direkt in die ESQL-Datei einfügen.
Weitere Informationen hierzu finden Sie im Abschnitt ESQL entwickeln.
CREATE COMPUTE MODULE Video_Test_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
-- Dieser ESQL-Code extrahiert einige der Felder aus der Eingabenachricht,
-- um die für Felder in unterschiedlichen Namensbereichen verwendeten Verweise
-- zu veranschaulichen.
SET OutputRoot = InputRoot;
DECLARE addr NAMESPACE 'http://www.ibm.com/AddressDetails';
DECLARE brw NAMESPACE 'http://www.ibm.com/BorrowedDetails';
DECLARE I INTEGER;
SET OutputRoot.MRM.Name = InputRoot.MRM.Name;
SET OutputRoot.MRM.addr:Address = InputBody.addr:Address;
IF InputRoot.MRM.ID ='P' THEN
SET OutputRoot.MRM.PassportNo = InputBody.PassportNo;
ELSEIF InputRoot.MRM.ID ='D' THEN
SET OutputRoot.MRM.DrivingLicenseNo=InputBody.DrivingLicenseNo;
ELSEIF InputRoot.MRM.ID ='C' THEN
SET OutputRoot.MRM.CreditCardNo=InputBody.CreditCardNo;
END IF;
SET I=1;
WHILE I<= CARDINALITY(InputBody.brw:Borrowed.*[]) DO
SET OutputRoot.MRM.brw:Borrowed[I].VideoTitle = InputBody.brw:Borrowed[I].VideoTitle;
SET OutputRoot.MRM.brw:Borrowed[I].DueDate=InputBody.brw:Borrowed[I].DueDate + INTERVAL '1' DAY;
SET OutputRoot.MRM.brw:Borrowed[I].Cost=InputBody.brw:Borrowed[I].Cost*2;
SET I=I+1;
END WHILE;
SET OutputRoot.MRM.Magazine = InputBody.Magazine;
RETURN TRUE;
END;
END MODULE
Zurück zum Beginn des Beispielprogramms