[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    May 2004
    Beiträge
    44

    JAR mit Paramtern richtig aufrufen

    Hallo,

    ich muss ein JAR-Programm zur Erzeugung eines QR-Codes in ein interaktives Programm integrieren - ich dachte an einen Aufruf von JAVA(RUNJVA) oder QSH in QCMDEXC.

    Der Aufruf lautet im Prinzip so:
    java -jar /home/qrcodegenerator2.jar -f /home/QRCODE.JPG -s 1024 -c "ABCDEFG HIJK"

    Die Werte hinter -f, -c und -s sind variabel, der ganze Aufruf-String wird also im Programm zusammengebastelt.

    Meine Probleme sind nun:
    • wenn ich es in JAVA so einbinde:

    JAVA CLASS('/LANSA_l15pgmlib/jsm/Instance/smh/qrcodegenerator2.jar') PARM(
    '-f /home/QRCODE.PNG' '-s 1024' '-c ABCDEFG')
    dann schimpft Java und sagt: Unknown option f /home/qrcode.png.
    Das "-" vor dem "f" wird irgendwie ignoriert.


    • wenn ich es über QSH aufrufe, wird das JAR Programm durchgeführt und die Datei erstellt, aber:

    dann öffnet sich die QSH-Ungebung, um mir zuerst mitzuteilen java.version wurde als Eingabe verwendet. Sie wird nur als Ausgabe verwendet
    und hat keine Auswirkung auf die JVM-Initialisierung.
    Und mir nach Abschluss zu sagen: Die Eingabetaste drücken, um die Terminalsitzung zu beenden.

    Wie kann ich das über JAVA/RUNJVA richtig aufrufen?
    Wie kann ich beim QSH.Aufurf den AUfurd der Shell-Umgebung unterbinden?

    Für Vorschläge wäre ich Euch sehr dankbar.

    Liebe Grüße,
    Jörg

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Das kommt ganeu darauf an, wie deine Main(String args) die Parameter auswerten will.
    I.d.R. wird jeder Paramter einzeln erwartet.
    Enthalt args[1] = "-f" so wird in args[2] der Parameter dazu erwartet.
    Also im Endefffekt nichts anderes, was du mit RPG/CL/... ebenso machst.

    clp(&p1 &P2) => call pgm('P1' 'P2')

    Mit einem call call pgm('P1 P2') ist P2 leer und P1 empfängt sogar nicht alles.

    Also ist dar Aufruf wahrscheinlich:

    PARM(
    '-f' '/home/QRCODE.PNG' '-s' '1024' '-c' 'ABCDEFG')
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    May 2004
    Beiträge
    44
    Hallo Fuerchau,

    ganz lieben Dank für die schnelle Antwort - so funktioniert's!

    Viele Grüße, Jörg

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Das ist wie in der schönen alten DOS-Welt. Aktuell auch als CMD-Box noch bekannt.
    Parameter werden bei Leerzeichen getrennt übergeben, was bei Pfade mit Leerzeichen dann in Hochkommata zu setzen ist.
    Auf der IBM i gibts da nur ab und zu das Problem, dass Kleinbuchstaben in Großbuchstaben gewandelt werden, was ebenso mit Hochkomma verhindert wird.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Jun 2001
    Beiträge
    1.975
    Wenn du das öfter am Tag brauchst, würde ich einen Java Job erstellen, der auf eine dataq horcht.
    Jedesmal Java starten ist 'suboptimal'
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

Similar Threads

  1. .jar datei aus ifs richtig aufrufen
    By ennsman in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 19-11-09, 14:06
  2. Entpacken mit jar
    By Freezer in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 13-06-05, 10:24
  3. SQLGetData richtig aufrufen
    By sim in forum NEWSboard Programmierung
    Antworten: 14
    Letzter Beitrag: 17-08-04, 14:44
  4. jar - Dateien auch hinzufügen?
    By andigoering in forum IBM i Hauptforum
    Antworten: 12
    Letzter Beitrag: 09-01-04, 15:02
  5. automatisiertes QSH-Script mit jar
    By beebof in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 29-01-03, 08:37

Berechtigungen

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