Von und zu Java-Programmen aufrufen

In Bezug auf den Java™-Code sind folgende Aufrufe möglich:

EGL-generiertes Java-Programm zu EGL-generiertem Java-Programm

Das Aufrufen eines EGL-generierten Programms von einem anderen Programm ist so einfach wie das Aufrufen der Java-Klasse für das Zielprogramm mit der Anweisung "call". Achten Sie jedoch auf Paketabhängigkeiten. Sie müssen eine Klasse aufrufen, die folgende Eigenschaften hat:
  • Sie muss sich im selben Paket befinden wie das aufrufende Programm.
  • Sie muss durch einen Paketnamen mithilfe der Punktsyntax qualifiziert sein.
  • Sie muss mit einem Verbindungsoptionsabschnitt identifiziert werden. Weitere Informationen finden Sie in Übersicht über den Verbindungsoptionsabschnitt.

Java-Nicht-EGL zu EGL-Programm

Um ein EGL-generiertes Programm von einem Nicht-EGL-generierten Java-Programm aufzurufen, gehen Sie wie folgt vor:

EGL-generiertes Java-Programm zu Java-Nicht-EGL-Programm

Um Nicht-EGL-Java-Code vom Java-Code aus aufzurufen, der von EGL generiert wurde, müssen Sie einen Schnittstellenabschnitt vom Typ "JavaObject" erstellen. Der Schnittstellenabschnitt enthält Funktionsbeschreibungen für die Java-Methoden, die Sie aufrufen möchten.

Rufen Sie die Java-Methode mit einer der zwei Verfahren auf:
  • Wenn die Funktion als statisch markiert ist, rufen Sie sie auf, indem Sie den Namen des Schnittstellenabschnitts und der Punktsynstax (interfacePart.method()) verwenden.
  • Erstellen Sie anderenfalls eine Variable auf der Basis dieses Schnittstellenabschnitts und verwenden Sie sie wie eine Variable in einer Bibliothek, indem Sie dem Namen der Schnittstellenvariable den Namen der Methode mithilfe der Punktsyntax anhängen (interface.method()).
Beachten Sie, dass die Java-Klasse eine Methode bereitstellen muss, um sich selbst zu instanziieren, da EGL keine Java-Klasse instanziieren kann.

EGL-generiertes Java-Programm zu DLL

Sie können Funktionen in einer einzigen Nicht-EGL-DLL-Datei (z. B. in C oder COBOL geschrieben) von einem EGL-Java-Programm aufrufen. Die Dateierweiterung für die DLL hängt von Ihrer Umgebung ab (z. B. DLL, SO und SL).

Sie erstellen einen Bibliotheksabschnitt vom Typ "nativeLibrary", der als Schnittstelle zwischen Ihrem EGL-Programm und der DLL fungiert. Der Bibliotheksabschnitt listet Funktionsnamen und Parameter auf und kann die Eigenschaft "alias" der Funktionen verwenden, bei denen die Funktionsnamen nicht den EGL-Konventionen entsprechen.

Greifen Sie auf die Funktionen mithilfe der Punktsyntax (library.function()) oder durch Erstellen der Deklaration "use" für die Bibliothek zu, um die Funktionen Ihrem Programm global zur Verfügung zu stellen.

EGL-generiertes Java-Programm zu EXE- oder BAT-Datei

EGL bietet zwei Funktionen, mit denen Sie einen Systembefehl (z. B. eine ausführbare BAT- oder EXE-Datei) aufrufen können.
sysLib.callCmd()
Mit dieser Funktion wird die Steuerung zu einer bestimmten ausführbaren Datei übertragen. Wenn die ausführbare Datei beendet wird, geht die Steuerung wieder an das aufrufende EGL-Programm zurück.
sysLib.startCmd()
Mit dieser Funktion wird die Steuerung zu einer bestimmten ausführbaren Datei übertragen und wird dann ausgeführt. Sowohl das EGL-Programm als auch die ausführbare Datei werden gleichzeitig ausgeführt.

Feedback