PDA

View Full Version : Durch einen Klassenaufruf CL Variablen füllen



Henrik Motzkus
08-06-07, 10:35
Hallo AS400 und Java Freunde,

gibt es eine Möglichkeit in einem CL mittels RUNJVA **.class Variablen in diesem CL zu füllen?

Gruß Henrik

BenderD
08-06-07, 11:44
Hallo,

gehen tut (fast) alles, man kann auch mit einem Bagger Eier schälen, oder mit einem Teelöffel eine Baugrube ausschachten, aber Sinn macht das alles drei nicht wirklich.

mfg

Dieter Bender


Hallo AS400 und Java Freunde,

gibt es eine Möglichkeit in einem CL mittels RUNJVA **.class Variablen in diesem CL zu füllen?

Gruß Henrik

Henrik Motzkus
08-06-07, 11:51
Warum sollte das keinen Sinn machen?

Ich führe ein CL aus. In diesem CL wird eine Java Klasse aufgerufen, die Dinge und Sachen tut. Und Variablen mit Werten füllt.
Und diese Werte verarbeite ich weiter.

Oder mache ich da jetzt einen Denkfehler?

Gruß

BenderD
08-06-07, 12:04
Hallo,

RUNJAVA oder auch der dahinter stehende QSHELL Aufruf von Java, ruft ein main in einer Java Klasse auf und diese gibt natur gemäß lediglich eine Integer als Fehlercode über erfolgreiche Ausführung zurück. Gedacht ist sowas für das starten von Java Anwendungen und das passiert normalerweise einmal am Tag und die Anwendung bleibt dann aktiv, bis der Benutzer nach Hause geht, oder ein Serverdienst beendet wird.

mfg

Dieter Bender


Warum sollte das keinen Sinn machen?

Ich führe ein CL aus. In diesem CL wird eine Java Klasse aufgerufen, die Dinge und Sachen tut. Und Variablen mit Werten füllt.
Und diese Werte verarbeite ich weiter.

Oder mache ich da jetzt einen Denkfehler?

Gruß

Henrik Motzkus
08-06-07, 12:07
Mir würde ein einfaches Wahr oder Falsch im CL schon genügen.

Kann ich den zurückgegebenen Errorcode im CL herausfinden?

BenderD
08-06-07, 12:19
Hallo,

das ist dann jetzt doch wieder die Frage, wie man mit einem Bagger Eier schält. Damit ich nicht unhöflich erscheine: das kann über die C Funktion errno abgefragt werden und kommt auch als CPF Message zurück und ich rate davon ab.

mfg

Dieter Bender


Mir würde ein einfaches Wahr oder Falsch im CL schon genügen.

Kann ich den zurückgegebenen Errorcode im CL herausfinden?

Henrik Motzkus
08-06-07, 12:23
Nee unhöflich ist das nicht. Warum raten Sie davon ab?

BenderD
08-06-07, 13:06
Hallo,

zum Mix aus RPG (und erst recht CL) und Java gibt es in diesem Forum und in den FAQs Java und AS400 auf meiner Web Seite jede Menge Infos. Dem habe ich zu dieser sehr allgemein gehaltenen Frage nichts hinzuzufügen.

mfg

Dieter Bender


Nee unhöflich ist das nicht. Warum raten Sie davon ab?

Henrik Motzkus
08-06-07, 13:20
Vielleicht mal etwas zum Hintergrund.

Ich will einen Datensicherungsjob bauen.

Aufgrund einer großen Anzahl von Abhängigkeiten unserer Systeme untereinander, muß ich vor Jobbeginn einiges abprüfen. z.b. Ist ein bestimmtes Internetportal noch online. Sind andere AS400 System noch am Laufen. usw.

Für die Prüfung auf den Status des Internetportals habe ich eine kleine Javaklasse gebaut, die nichts anderes macht, als einen HTML Stream zu parsen um dann festzustellen: Okay oder Nichokay.

Das wiederum möchte ich in meinem kleinen CL Datensicherungsjob wissen, ob: Okay oder Nichokay.

Ich weiß! Ich kann mit dem kleinen Javaprogramm auch ein Objekt auf Platte der AS400 erzeugen und im CL auf Existenz prüfen. Aber ist das elegant?

Wünsche trotz meiner "amateurhaften" Fragen ein schönes Wochenende.

Gruß Henrik

BenderD
08-06-07, 13:45
Hallo Herr Motzkus,

vielleicht sollte man sowas gleich zu Beginn etwas deutlicher formulieren, aber sei's drum:
Das was Sie da machen, ist durchaus adäquater Einsatz von Java. Wenn Sie ok zurück liefern wollen, beenden Sie das Java Progrämmle mit System.exit(0) , im "Fehlerfall" beenden Sie dann mit System.exit(-1) oder einem beliebigen Wert <> 0 die daraus resultierende CPF können Sie dann mit MONMSG im CL abfangen.
Sie sollten im CL aber nicht in einer Schleife mit Mehrfach Versuchen warten bis ok kommt, das wäre eher nicht so toll.

mfg

Dieter Bender



Vielleicht mal etwas zum Hintergrund.

Ich will einen Datensicherungsjob bauen.

Aufgrund einer großen Anzahl von Abhängigkeiten unserer Systeme untereinander, muß ich vor Jobbeginn einiges abprüfen. z.b. Ist ein bestimmtes Internetportal noch online. Sind andere AS400 System noch am Laufen. usw.

Für die Prüfung auf den Status des Internetportals habe ich eine kleine Javaklasse gebaut, die nichts anderes macht, als einen HTML Stream zu parsen um dann festzustellen: Okay oder Nichokay.

Das wiederum möchte ich in meinem kleinen CL Datensicherungsjob wissen, ob: Okay oder Nichokay.

Ich weiß! Ich kann mit dem kleinen Javaprogramm auch ein Objekt auf Platte der AS400 erzeugen und im CL auf Existenz prüfen. Aber ist das elegant?

Wünsche trotz meiner "amateurhaften" Fragen ein schönes Wochenende.

Gruß Henrik