Tasks, die Sie nach der Generierung des Musters ausführen müssen.
Das Muster erstellt einen untergeordneten Nachrichtenfluss für jede Operation (Erstellen, Lesen, Aktualisieren und Löschen). Beenden Sie die Implementierung der untergeordneten Nachrichtenflüsse mit Aufrufen an Ihre Back-End-Anwendungen. Das Muster generiert eine Referenzimplementierung für jede CRUD-Operation in den untergeordneten Nachrichtenflüssen. Die Referenzimplementierung wird als Beispiel bereitgestellt. Damit können Sie die generierte Anwendung als funktionsfähige Lösung in Message Broker implementieren, was Ihnen das Verständnis zur Funktion des Musters erleichtern kann.
Der durch dieses Muster generierte Worklight-Adapter übergibt die Daten aus der mobilen Anwendung direkt an Message Broker, ohne dass Konvertierungen angewendet werden. Bei diesem Design sollten Sie das Format der JSON-Daten akzeptieren, die zwischen der mobilen Anwendung und den untergeordneten Nachrichtenflüssen in Message Broker übergeben werden. Bei den Anwendungsdaten, die zwischen der mobilen Anwendung und Message Broker übergeben werden, handelt es sich um ein einzelnes JSON-Objekt. Die mobile Anwendung stellt dieses JSON-Objekt bereit, wenn WL.Client.InvokeProcedure
für den Aufruf einer Back-End-Anwendung aufgerufen wird.
Sie können die Message Broker-Anwendung getrennt von Worklight und der mobilen Anwendung testen. Beispielsweise kann das Firefox-Plug-in 'Poster' HTTP/JSON-Anforderungen an Message Broker senden und empfangen. Sie können die Message Broker-Anwendung auch über Worklight Studio testen. Worklight Studio kann den durch dieses Muster generierten Adapter aufrufen, indem die HTTP/JSON-Anforderung aus einer mobilen Anwendung simuliert wird.
Wenn Sie die Sicherheit aktiviert haben, muss die mobile Anwendung außerdem die Benutzerberechtigungen zur Authentifizierung und Autorisierung bereitstellen.
Wenn Sie die Sicherheit aktiviert haben, werden vom Muster zusätzliche konfigurierbare
Servicedateien generiert. Die Dateien konfigurieren die Sicherheitsverarbeitung in Message Broker. Die erste Datei (AuthenticationSecurityProfile.configurableservice
) konfiguriert die Authentifizierung, die vom HTTPInput-Knoten ausgeführt wird. Die zweite Datei (AuthorisationSecurityProfileReaders.configurableservice
) konfiguriert die Autorisierung für Leser. Die dritte Datei (AuthorisationSecurityProfileWriters.configurableservice
) wird nur generiert, wenn Sie mindestens eine Schreiboperation (Erstellen, Aktualisieren oder Löschen) ausgewählt haben. Diese Datei konfiguriert die Autorisierung für Autoren.
Implementieren Sie die konfigurierbaren Servicedateien für Message Broker in Message Broker Toolkit oder in Message Broker Explorer. Weitere Informationen finden Sie im Abschnitt Configurable services in der Message Broker-Hilfe .
Es wird empfohlen, während der Implementierung eine LDAP-Benutzer-ID und ein LDAP-Kennwort mithilfe von mqsisetdbparms
festzulegen.
Message Broker meldet sich mit diesen Berechtigungsnachweisen im LDAP-Server an, um die Authentifizierung durchzuführen. Wenn keine Benutzer-ID und kein Kennwort konfiguriert sind, stellt Message Broker eine anonyme Verbindung zum LDAP-Server her. Weitere Informationen finden Sie im Abschnitt
Configuring authentication with LDAP in der Message Broker-Hilfe.
Wenn Sie das Zwischenspeichern aktiviert haben, müssen Sie den globaler Cache in Message Broker konfigurieren. Der standardmäßige globale Cache kann direkt in Message Broker Explorer konfiguriert werden. Weitere Informationen finden Sie im Abschnitt Managing the global cache in der Message Broker-Hilfe.
Der globale Cache verfügt nicht über einen automatischen Ablauf (Bereinigung) von Daten. Die Daten der durch dieses Muster erstellten Anwendung werden deshalb unbegrenzt zwischengespeichert. Dies ist möglicherweise nicht ausreichend, falls Änderungen an der Back-End-Anwendung durch andere Kanäle vorgenommen werden (z. B. direkt an der Back-End-Anwendung und nicht über Message Broker).
Es gibt mehrere Möglichkeiten, das von diesem Muster bereitgestellte Zwischenspeichern zu optimieren. Die erste Option ist, Änderungen an der Back-End-Anwendung zu überwachen und diese Ereignisse als Auslöser zu verwenden, um Einträge aus dem Cache zu entfernen. Der DatabaseInput-Knoten ist ein gutes Beispiel für diesen Vorgang. Der DatabaseInput-Knoten kann eine oder mehrere Datenbanktabellen überwachen und Änderungen an den Anwendungsdaten suchen. Sobald eine Änderung erkannt wird, kann ein Nachrichtenfluss den erforderlichen Eintrag aus dem Cache entfernen. Bei der nächsten Leseanforderung aus einer mobilen Anwendung werden die Daten nicht im Cache gefunden und die Back-End-Anwendung wird aufgefordert, die Änderungen zu berücksichtigen.
Eine zweite Option ist das regelmäßige Löschen des gesamten Cache. Dies hat den Vorteil, das
die Implementierung mit dem Befehl mqsicacheadmin
direkt möglich ist. Alle Einträge im Cache werden durch ein Shell-Script gelöscht, das diesen Befehl regelmäßig mithilfe der Option -c clearGrid
ausführt. Bei dieser Methode wird sichergestellt, dass der Cache nicht
unbegrenzt anwächst. Außerdem wird ein maximaler Zeitraum für alle Daten im Cache
sichergestellt. Weitere Informationen finden Sie im Abschnitt mqsicacheadmin in der Message Broker-Hilfe.
Allerdings müssen Sie sicherstellen, dass sich die von Ihnen geänderten Werte nicht auf das Verhalten der Musterinstanz auswirken.
Zurück zur Spezifikation des Musters 'Worklight: resource handler'