Die Systemfunktion 'javaLib.store()' ruft eine Methode auf, stellt das zurückgegebene Objekt (oder einen Nullwert) in den EGL-Java™-Objektbereich und ordnet dieses Objekt einer angegebenen Kennung zu.
Wenn die Methode ein Java-Basiselement anstelle eines Objekts zurückgibt, speichert EGL ein Objekt, das dieses Basiselement darstellt. Gibt die Methode beispielsweise ein Element vom Typ 'int' zurück, speichert EGL ein Objekt des Typs 'java.lang.Integer'.
Weitere Informationen zum EGL-Java-Objektbereich, in dem 'javaLib.store()' und ähnliche Funktionen ausgeführt werden, finden Sie im Abschnitt zu den Java-Zugriffsfunktionen. EGL verwaltet diese Methode für Java-Zugriff zwecks Kompatibilität mit früheren Versionen. Verwenden Sie für neuen Code die leistungsfähigere ExternalType-Syntax. Weitere Informationen finden Sie in 'ExternalType (Abschnitt)'.
javaLib.store(
Speicher-ID javaObjId in,
Kennung_oder_Klasse javaObjId in,
Methode STRING in
{, Argument anyEGLPrimitive in} )
SharedResourcePowerServer srps = JavaLib.getSharedResourcePowerServer();
JavaLib.store("storeId" as "objID:java", "myId" as "objID:java",
"myMethod", srps);
Im folgenden Beispiel wird myMethod aufgerufen, und die Ergebnisse werden zu storeID zugeordnet.
javaLib.store("storeId" as "objID:java", "myId" as "objID:java",
"myMethod", myVar as "java:smallfloat");
Ist die Programmeigenschaft 'v60ExceptionCompatibility' nicht oder auf NO gesetzt, führt eine Ausnahmebedingung dazu, dass eine Ausnahmebedingung vom Typ 'JavaObjectException' ausgelöst wird. Andere Fehler können eine Ausnahmebedingung vom Typ 'RuntimeException' auslösen.
Ist die Programmeigenschaft 'v60ExceptionCompatibility' auf YES gesetzt, kann ein Fehler während der Verarbeitung von 'javaLib.store()' dazu führen, dass 'sysVar.errorCode' auf einen in der nächsten Tabelle aufgeführten Wert gesetzt wird.
| Wert in 'sysVar.errorCode' | Beschreibung |
|---|---|
| 00001000 | Es wurde eine Ausnahmebedingung durch eine aufgerufene Methode oder infolge einer Klasseninitialisierung ausgelöst. |
| 00001001 | Das Objekt ist leer (null), oder die angegebene Kennung ist nicht im Objektbereich vorhanden. |
| 00001002 | Eine öffentliche Methode, ein öffentliches Feld oder eine öffentliche Klasse mit dem angegebenen Namen ist nicht vorhanden oder kann nicht geladen werden. |
| 00001003 | Der EGL-Basiselementtyp stimmt nicht mit dem in Java erwarteten Typ überein. |
| 00001006 | Die Klasse einer Argumentumsetzung in null konnte nicht geladen werden. |
| 00001007 | Bei dem Versuch, Informationen zu einer Methode oder einem Feld abzurufen, wurde eine Ausnahmebedingung vom Typ 'SecurityException' oder 'IllegalAccessException' ausgelöst. Oder es wurde versucht, den Wert eines als 'final' deklarierten Feldes zu setzen. |
| 00001009 | Anstelle eines Klassennamens muss eine Kennung angegeben werden. Die Methode oder das Feld ist nicht statisch. |