In EGL werden eine Bibliothek und Datensatzdefinitionen zum Kommunizieren mit Datenwarteschlangen und Datenbereichen unter iSeries bereitgestellt.
Das Betriebssystem iSeries besitzt eine eigene API zum Abwickeln der Kommunikation zwischen Programmen.
Die Kommunikation kann über ein Objekt oder mehrere Objekte erfolgen:
- Ein Datenbereich ist ein Objekt mit fester Größe, in das jeder Job, der auf einem System ausgeführt wird, schreiben bzw. aus dem jeder Job auf dem System lesen kann. Man kann es sich als virtuelle Pinnwand vorstellen. Es kann so eingerichtet werden, dass es Daten eines der folgenden Typen enthält:
- Eine Zeichenfolge von bis zu 2000 Byte
- Eine Dezimalzahl
- Einen booleschen Wert (TRUE oder FALSE)
- Eine Datenwarteschlange ist ein Objekt mit variabler Länge, in dem eine beliebige Anzahl von Nachrichten von einer beliebigen Anzahl von Jobs gespeichert werden kann. Datenwarteschlangen sind mit WebSphere-Nachrichtenwarteschlangen (MQs, Message Queues) vergleichbar.
Ein Datenbereich hat einen niedrigeren Systemaufwand als eine Datenwarteschlange. Die Auswahl des zu verwendenden Objekts hängt daher im Allgemeinen von der Komplexität der Task ab. Es kann zum Beispiel ein Datenbereich zum Speichern eines Kennzeichens gespeichert werden, mit dem ein Programm einem anderen Programm die Anweisung zum Durchführen einer Garbage-Collection geben kann. In der Regel sind Datenwarteschlangenszenarien komplexer als im folgenden Beispiel:
- Eine Anwendung ist für bestimmte Anforderungstypen empfangsbereit. Für jede Anforderung wird ein Datensatz erstellt und dieser zur Warteschlange hinzugefügt.
- Andere Anwendungen sind für neue Datensätze empfangsbereit, die von der ersten Anwendung erstellt wurden. Im einen Fall werden Datensätze zum Aktualisieren einer Datenbank verwendet. In einem anderen Fall wird derselbe Datensatz zum Generieren einer Rechnung verwendet.
In EGL werden diese iSeries-Objekte auf zwei Arten unterstützt:
- EGL-Datensatzabschnitte, die verschiedenen iSeries-Objekten entsprechen, darunter unter anderem Datenbereiche und Datenwarteschlangen. Die Datensatzabschnitte befinden sich in der Datei 'CommonDataParts.egl'.
- Eine Bibliothek von EGL-Funktionen, die iSeries-API-Aufrufe umbrechen. Die Bibliothek, die Sie verwenden, hängt von der Sprache ab, die Sie generieren:
- 'iCobolLib.egl' wird für die COBOL-Generierung verwendet.
- 'iJavaLib.egl' wird für die Java™-Generierung verwendet.
In dieser Bibliothek werden ExternalType-Abschnitte verwendet, die mit Klassen aus IBM® Java Toolbox implementiert werden. Weitere Informationen dazu finden Sie im Abschnitt 'Erforderliche IBM Toolbox for Java' in diesem Kapitel.
Die einfachste Art zum Hinzufügen dieser Dateien zu Ihrem Arbeitsbereich ist das Hinzufügen der Funktion EGL mit Unterstützung für IBM i-Objekte für Ihr Projekt. Weitere Informationen finden Sie im Kapitel Funktionen und Facetten von EGL-Projekten.
Nähere Informationen zu diesen Datensatzabschnitten und Funktionsaufrufen finden Sie im Abschnitt 'Zugehörige Referenz' am Ende dieses Kapitels.
Erforderliche IBM Toolbox for Java
Fernaufrufe mit
'remoteComType = Java400' in der Aufrufverknüpfung stammen von Java oder der Debugfunktion und werden zum Aufrufen eines Programms auf einer System i-Maschine verwendet. In EGL werden Klassen aus IBM Toolbox for Java zum Aktivieren dieser Aufrufe verwendet.
Benutzer, die Java400-Aufrufe durchführen, müssen die Bibliothek
'jt400.jar' aus dem Internet herunterladen und zum Projektklassenpfad hinzufügen:
- Navigieren Sie zur folgenden Position und befolgen Sie die Anweisungen zum Herunterladen von Toolbox for Java:
http://www.ibm.com/systems/i/software/toolbox/index.html
- Extrahieren Sie die Datei 'jt400.jar' in ein Verzeichnis auf Ihrem System.
- Klicken Sie mit der rechten Maustaste auf den Projektnamen und klicken Sie auf .
- Klicken Sie auf 'Externe JAR-Dateien hinzufügen'.
- Navigieren Sie zum Archiv 'jt400.jar' und klicken Sie auf 'Öffnen'.
Klicken Sie auf 'OK', um das Fenster 'Eigenschaften' zu schließen.