[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Apr 2008
    Beiträge
    83

    Question Teilweise ConnectionDroppedException bei Aufruf RPG-Programm aus Java

    Moin,

    ich habe ein RPG-Programm, dass ein CL-Programm eines Drittanbieters aufruft und das Ergebnis anschließend zurückgibt.

    Rufe ich das RPG-Programm über ein anderes RPG-Programm auf, funktioniert alles wunderbar.
    Jetzt möchte ich das RPG-Programm aber aus der Windowswelt aufrufen. Am Einfachsten schien mir das mit Java zu sein, da ich das schon gemacht habe.
    Ich habe ein Java-Programm erstellt, in dem ich über ProgramCall das RPG-Programm aufrufe.

    Lasse ich das Programm laufen, bekomme ich aber immer eine ConnectionDroppedException. Nehme ich den Aufruf des CL-Programms heraus, läuft das Programm normal durch. Es liegt also sicherlich an dem CL-Programm, ich weiß nur nicht warum.

    Leider gibt es kein Joblog auf der AS/400. Ich habe in das Java-Programm eingebaut, dass es mir das Joblog ausgibt, bevor das RPG-Programm aufgerufen wird. Bis dahin ist alles i.O.
    Auch wenn ich die Nachrichtenaufzeichnung im Java-Programm auf *SECLVL anpasse, erhalte ich kein Joblog.

    Im Log steht nur:
    Job 220732/QUSER/QZRCSRVS im Subsystem QUSRWRK in QSYS […] gestartet.
    Benutzer xyz […] ist mit Job 220732/QUSER/QZRCSRVS […] verbunden.
    Job 220732/QUSER/QZRCSRVS endete […] nach 0,022 Sekunden; Beendigungscode 0

    Die Jobs landen alle im Subsystem QUSRWRK und die ist verbunden mit der Jobqueue QUSRNOMAX. Ich habe versucht die Jobqueue anzuhalten und dann das Programm zu starten, aber der Job ist dort trotzdem nicht zu sehen. Ich vermute, dass ist absichtlich so von der IBM gestaltet?

    Weiß jemand was ich noch tun kann um herauszufinden warum das nicht funktioniert?
    Gibt es Alternativ andere Möglichkeiten als ProgramCall. Am Besten auch über Java oder notfalls auch ganz anders?

  2. #2
    Registriert seit
    Aug 2003
    Beiträge
    1.508
    Hallo,

    Vielleicht benötigt das CL eine bestimmte Umgebung (LIBL, CCSID, Interactiv?, etc.)
    Hast du schon probiert das RPG mit SBMJOB zu übergeben.
    In RPG lass dir z.b. mit DSPLY oder in eine Tabelle den Status ausgeben.

    Ich rufe Programme generell als externe Stored Procedure ganz normal via SQL {CALL RPGPGM (?,?,?)} über JDBC auf.

    lg Andreas

  3. #3
    Registriert seit
    Apr 2008
    Beiträge
    83
    Moin,

    Zitat Zitat von andreaspr@aon.at Beitrag anzeigen
    Vielleicht benötigt das CL eine bestimmte Umgebung (LIBL, CCSID, Interactiv?, etc.)
    Hast du schon probiert das RPG mit SBMJOB zu übergeben.
    In RPG lass dir z.b. mit DSPLY oder in eine Tabelle den Status ausgeben.
    LIBL habe ich vorher im Java-Programm angeglichen.
    SBMJOB habe ich gerade probiert. Hat auch funktioniert.

    Die Ausgabe in eine Tabelle hat mir aber den entscheidenden Punkt gebracht. Manchmal ist es doch so einfach. Die mitgegebenen Parameter waren falsch.
    Zufällig habe ich danach auch noch eine Warteschlange gefunden, in die das CL-Programm etwas schreibt. Dort stand das dann auch. Schön wäre es gewesen, wenn diese Warteschlange in der Doku erwähnt wäre.
    Blöd ist nur, dass das CL-Programm dann scheinbar einfach den Job beendet hat und das auch noch ohne Fehler. Das RPG-Programm kam gar nicht bis zum Ende. Auch blöd, dass das CL-Programm, das extra einen Parameter für eine Error-DS hat, diese DS nicht gefüllt hat.
    Naja jetzt funktioniert es jedenfalls.

    Danke für den entscheidenden Tipp.

    Zitat Zitat von andreaspr@aon.at Beitrag anzeigen
    Ich rufe Programme generell als externe Stored Procedure ganz normal via SQL {CALL RPGPGM (?,?,?)} über JDBC auf.
    Das ist interessant. Das werde ich mir merken, falls ich das mal brauche.

Similar Threads

  1. Problem mit Java-Methoden Aufruf aus ILE RPG?
    By Stoeberl in forum NEWSboard Programmierung
    Antworten: 8
    Letzter Beitrag: 10-01-07, 10:58
  2. Aufruf von Java Methode aus RPG
    By codierknecht in forum NEWSboard Java
    Antworten: 7
    Letzter Beitrag: 23-03-05, 08:31
  3. Java Programm aus ILE RPG aufrufen
    By PGMR in forum NEWSboard Java
    Antworten: 10
    Letzter Beitrag: 10-02-05, 10:33
  4. Java Programm aus ILE RPG aufrufen
    By PGMR in forum NEWSboard Programmierung
    Antworten: 0
    Letzter Beitrag: 02-02-05, 13:10
  5. Aufruf von Java Programm direkt aus RPG
    By mk in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 09-09-04, 08:22

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •