Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

JCI_NewObjectArray

Die Funktion erzeugt ein Array-Objekt für Objekt-Elemente.
Sie ist äquivalent zur JNI-Funktion NewObjectArray.

Aufruf

CALL 'JCI_NewObjectArray' USING num cObj eObj res

num

cObj

eObj

res

Anzahl der Elemente

Element-Klasse

Element-Initialwert

Ergebnisbeschreibung

Argumente

num

Datenfeld des Typs JCI-size
Anzahl der Elemente des Arrays.

cObj

Datenfeld des Typs JCI-object
Klassen-Objekt für die Klasse der Array-Elemente.

eObj

Datenfeld des Typs JCI-object
Initialwert für die Array-Elemente (darf auch JCI-NULL sein).

res

eine Struktur der Form MethodRes
Rückgabewert (neue Objektreferenz) in ResValObject. Im Fehlerfall wird der Wert JCI-NULL zurückgeliefert.

Returnwert (RETURN-CODE)

JCI-RET-OK

Der Aufruf war erfolgreich.

JCI-RET-ENULLOBJ

cObj ist JCI-NULL.

JCI-RET-EARGUMENT

cObj ist kein Klassen-Objekt.

JCI-RET-EINDAOB

num ist kleiner als 0.

JCI-RET-ENOVM

Es ist keine Java-VM gestartet.

JCI-RET-ERESVERS

Die statisch generierte Versionsnummer in res ist ungültig (eventuell überschrieben).

JCI-RET-ERR

Das Array-Objekt konnte nicht erzeugt werden.

Exceptions

Die von der Funktion geworfenen Exceptions entsprechen denen der JNI-Funktion NewObjectArray.

Beispiel

DATA DIVISION.
WORKING-STORAGE SECTION.
COPY JCI-TYPEDEFS.
01 JCIConstants.
COPY JCI-CONST.
...
01 className.
  05 len PIC S9(9) COMP-5 VALUE 40.
  05 txt PIC X(40) VALUE SPACE.
01 classObj TYPE JCI-object.
01 initObj  TYPE JCI-object.
01 arrayObj TYPE JCI-object.
01 numElements PIC S9(9) COMP-5.
...
...
01 MethodRes.
  COPY JCI-METHODRES.
...
PROCEDURE DIVISION.
*>
*> Create array of 10 String-elements
*>
MOVE 'java/lang/String' TO txt IN className
CALL 'JCI_FindClass' USING className classId
IF RETURN-CODE NOT = JCI-RET-OK
...
END-IF.
MOVE 10 TO numElements
MOVE JCI-NULL TO initObj
CALL 'JCI_NewObjectArray' USING numElements classId
                                initObj MethodRes
IF RETURN-CODE NOT = JCI-RET-OK
...
END-IF.
MOVE ResValObject TO arrayObj
...