-
Hallo,
Group PTF Stand könnte immer noch Kandidat sein.
Hast du folgende Datei bei dir:
/QIBM/UserData/Java400/SystemDefault.properties
oder
/home/userid/SystemDefault.properties
oder gibt es sonstwo bei dir Dateien mit dem Namen SystemDefault.properties? wenn ja dann poste mal den Inhalt.
Die Frage mit den vorherigen Java Aufrufen im gleichen Job ist noch offen!
mfg
Dieter Bender
 Zitat von muadeep
Public-Berechtigung der *.class Files habe ich auf "use" gesetzt -> funkt leider auch nicht!
Wir haben V5.2 installiert
Wie kann ich den festellen welche Java-Gruppen PTF es sein sollte?
-
Also unter /QIBM/UserData/Java400/ und unter /home/userid/
habe ich die Datei "SystemDefault.properties" nicht gefunden!
Kann ich den z.b. mit WRKLNK nach einer bestimmten Datei suchen lassen?
ich hab einfach mal so in den Verzeichnissen rumgeschaut, da hab ich folgende Datei gefunden
/QIBM/ProdData/Java400/SystemDefaultCacheExample.properties
Weiß aber nicht, ob die mit der gewünschen was zu tun hat?
Ich poste sie trotzdem mal!
os400.define.class.cache.file=/QIBM/ProdData/Java400/QDefineClassCache.jar
os400.define.class.cache.hours=168
os400.define.class.cache.maxpgms=5000
Die Frage mit den vorherigen Java Aufrufen im gleichen Job
kann ich leider nicht beantworten, da ich nicht genau weiß was du damit meinst?
Soll ich dir mal die beiden RPG's mit den Java's aufrufen, Proc., etc. posten oder?
-
Hallo,
wenn du dir mal den OS400 Command JAVA (oder runjva) anschaust, da gibt es einen Parameter CHKPATH, der Einstellungen an der JVM vornimmt. Dieser Parameter steht im default auf *WARN, aber dein Programm verhält sich so, als ob der auf *SECURE stünde. Nun wird aber beim Aufruf von Java aus rpg die JVM automatisch gestartet, aber nur beim ersten Java Aufruf innerhalb des Jobs; ich will halt ausschließen, dass da bereits vorher was passiert.
Normal wird der CHPATH eingestellt über den Parameter von JAVA oder RUNJVA, über die SystemDefault.properties, die in QIBM... oder im Benutzerverzeichnis gesucht werden; das von dir gefundene ist dabei nicht im Spiel. Suchen kann man Dateien nach Namen von der Qshell, oder mit dem Explorer und gemappter AS400, wenn der Netserver eingerichtet ist.
Eine weitere Möglichkeit an den JVM Parametern rumzuschrauben beommt man auch mit Java Native Interface hin. Das tückische ist halt, dass es sein kann, dass ein anderes Programm vorher verdrechsellt hat und Stunden später ein völlig anderes Programm zusammen bricht - ich weiss schon warum ich immer sage: Finger weg von diesem Unfug!!!
mfg
Dieter Bender
 Zitat von muadeep
Also unter /QIBM/UserData/Java400/ und unter /home/userid/
habe ich die Datei "SystemDefault.properties" nicht gefunden!
Kann ich den z.b. mit WRKLNK nach einer bestimmten Datei suchen lassen?
ich hab einfach mal so in den Verzeichnissen rumgeschaut, da hab ich folgende Datei gefunden
/QIBM/ProdData/Java400/SystemDefaultCacheExample.properties
Weiß aber nicht, ob die mit der gewünschen was zu tun hat?
Ich poste sie trotzdem mal!
os400.define.class.cache.file=/QIBM/ProdData/Java400/QDefineClassCache.jar
os400.define.class.cache.hours=168
os400.define.class.cache.maxpgms=5000
Die Frage mit den vorherigen Java Aufrufen im gleichen Job
kann ich leider nicht beantworten, da ich nicht genau weiß was du damit meinst?
Soll ich dir mal die beiden RPG's mit den Java's aufrufen, Proc., etc. posten oder?
-
so, habe mal mit der QSHELL
und dem Befehl "find * | grep SystemDefault"
nach der Datei "SystemDefault.properties" suchen lassen!
(hoffe der Befehl stimmte so?)
das einzige, was gefunden wurde war dies:
QIBM/ProdData/Java400/SystemDefaultCacheExample.properties
aber die hat ja damit leider nicht's zu tun!
wie sollte denn die SystemDefault.properties" aussehen?
kann/muß ich die nachträglich installieren?
Fehlt mir vieleicht was bestimmtes auf meinem System?
Sollen noch bestimmte Daten/Programme auf der AS400 installiert werden?
-
Hallo,
nochmal: das ist ein Fehler beim Start der JVM aus der RPG runtime; entweder habt ihr ig'rgendein Property File verdrechselt, die JVM in diesem Job bereits vorher gestartet, oder die JVM hat einen Schuss.
- werden in diesem Job vorher Java Aufrufe gemacht?
- was habt ihr für einen Release und PTF Stand, insbesondere JAVA GruppenPTF?
mfg
Dieter Bender
PS: Ein Work Around, der sich anbietet, ist die Public Berechtigungen an den class files auf ausführen zu reduzieren.
 Zitat von muadeep
Wie immer zunächst mal Danke für eure schnelle Antworten!
zu "BenderD":
Wie das mit den 3 Posting's ging weiß ich leider selber nicht!
Hatte mich darin aber auch gleich entschuldigt! Sorry noch mal
zu "KM":
Habe mir die *.zip mal runtergeladen und auch gleich installiert (so wie in Anleitung beschrieben) (ist so ähnlich wie meins)
Nach dem Aufruf von "JavaMailTest" bekommen ich jetzt folgenden Programmabbruch
"Java-Ausnahme beim Aufrufen der Java-Methode empfangen (C G D F)"
Im JobLog steht folgends:
Allgemeine Schreibberechtigung für ".".
Java-Ausnahme beim Aufrufen der Java-Methode empfangen.
Funktionsprüfung. RNX0301 nicht überwacht durch JAVAMAIL bei Anweisung
0000000135, Instruktion X'0000'.
Java-Ausnahme beim Aufrufen der Java-Methode empfangen (C G D F).
Java-Ausnahme beim Aufrufen der Java-Methode empfangen (C G D F).
Was mache ich bzw. was ist jetzt falsch?
Wie kann ich die "allgemeine Schreibberechtigung" änder, bzw.
muß ich daß überhaupt, wenn ja, in was muß ich sie ändern?
-
Hallo,
Fehler, die man schwer findet sind entweder höllisch kompliziert, oder elementar im vorliegenden Fall zweiteres:
mit deinem Package Namen ist was nicht in Ordnung. Packages, die mit java anfangen sind reserviert.
mfg
Dieter Bender
PS: das mit dem fehlenden javax.... ist ein Classpath Problem und hat mit dem anderen nix zu tun.
mfg
Dieter Bender
 Zitat von muadeep
Doch als ich mein RPGLE aufrufen wollte, bekam ich einen Programmabbruch!
Java-Ausnahme "java.lang.SecurityException: Prohibited package name:
java.demo" empfangen, als die Methode "sendSimpleMail" mit Kennung
-
Package-Namen ????
Sorry, aber ich versteh jetz überhaupt nicht's mehr!
Was ist ein Package Name?
Was muß ich den machen, damit das Programm auch bei
mir läuft?
Wie muß ich den Source-Code abwandeln, bzw. was muß ich darin ändern?
PS: Bin leider mit Java überhaupt nicht speziel! ;-)
-
Hallo,
vielleicht fängst du mal hier an:
http://www.boku.ac.at/javaeinf/
mfg
Dieter Bender
 Zitat von muadeep
Package-Namen ????
Sorry, aber ich versteh jetz überhaupt nicht's mehr!
Was ist ein Package Name?
Was muß ich den machen, damit das Programm auch bei
mir läuft?
Wie muß ich den Source-Code abwandeln, bzw. was muß ich darin ändern?
PS: Bin leider mit Java überhaupt nicht speziel! ;-)
-
Hallo Muadeep,
noch einmal, der Fehler liegt nicht in diesem JavaMail-Tool. Deshalb brauchst Du auch den Source-Code nicht zu posten. Dein Problem, dass Du das JavaMail Programm nicht kompilieren konntest, liegt daran, dass Dein CLASSPATH nicht stimmt. Rufe doch zunächst mal (mit CALL)das Programm STRMAIL auf. Das setzt den CLASSPATH. Und schau Dir danach mal mit WRKENVVAR die Variable CLASSPATH an. Dort müssten die ganzen JARs eingetragen sein, die bei Dir hoffentlich auch im Verzeichnis /JavaUtil/JavaMail im IFS vorhanden sind. Nur dann kannst Du auch kompilieren und ausführen. Mit dem Programm CLSMAIL wird der CLASSPATH wieder zurückgesetzt.
Da Du offenbar auch andere Java-Programme benutzt, würde ich Dir empfehlen erstmal Deinen Job zu beenden und dann das Ganze in einem neuen Job nochmal zu testen, um sicherzugehen, dass da nichts anderes mehr dazwischenfunkt. Ist mir auch schon öfters passiert, dass ein Java-Aufruf erst geklappt hat, nachdem ich ihn in einem neu initialisierten Job gestartet habe.
Gruß,
KM
-
ja, daß mit dem "STRMAIL" hatte ich schon gemacht!
ich poste mal die Anzeige nach "WRKENVVAR"
Irgendwie schaut die komisch aus !!!
Vieleicht is ja daran was falsch?
Mit Umgebungsvariablen arbeiten (*JOB)
Auswahl eingeben und Eingabetaste drücken.
1=Hinzufügen 2=Ändern 4=Entfernen 5=Details anzeigen 6=Drucken
Auswahl Name Wert
ICU_DATA '/QIBM/ProdData/OS400/icu/data'
LANG '/QSYS.LIB/DE_DE.LOCALE ' >
CLASSPATH '.:/JAVAUTIL/JAVAMAIL/ACTIVATION.JA' >
Wenn ich mir den CLASSPATH dann mit "5" anzeigen lassen,
sieht der wie folgtaus:
Umgebungsvariablen anzeigen (*JOB)
Name . . . . . . . . . : CLASSPATH
Wert . . . . . . . . . :
'.:/JAVAUTIL/JAVAMAIL/ACTIVATION.JAR:/JAVAUTIL/JAVA
MAIL/IMAP.JAR:/JAVAUTIL/JAVAMAIL/MAIL.JAR:/JAVAUTIL/JAVAMAIL/MAILAPI.JAR:/JAVAUT
IL/JAVAMAIL/SMTP.JAR:/JAVAUTIL/JAVAMAIL/'
Die Verzeichnise sind bei mir im IFS unter /JavaUtil/JavaMail (also genauso wie in der Beschreibung und wie bei dir).
Daran habe ich nicht's geändert!
Das mit dem Job-beenden bzw. Bildschirmsitzung beenden und neu starten hab ich auch immer gemacht!
-
Der CLASSPATH ist korrekt. Hat die Umwandlung jetzt funktioniert, nachdem Du den CLASSPATH zuerst mit STRMAIL richtig gesetzt hast ? Die Fehler, die Du in Deiner letzten Umwandlung hattest, bezogen sich nämlich alle auf Packages, die nicht gefunden werden konnten, weil der CLASSPATH falsch war. Wie sieht denn der Inhalt Deines Verzeichnisses /JavaUtil/JavaMail aus ?
Gruß,
KM
-
Hallo,
in Java ist alles Case sensitive, immer und überall, auch der CLASSPATH. Das Mülltrennzeichen am Anfang ist unschön, macht aber wahrscheinlich nix.
Dieter Bender
PS: Ich habe die Empfehlung mit einem Selbstlernkurs Java (der von Hubert Partl ist übrigens sehr gut) wirklich nicht gemacht um dich zu ärgern, man sollte schon etwas Grundkenntnisse haben, bevor man sich auf so Sachen einlässt wie RPG mit Java zu verheiraten - vielleicht bekommt man dann auch eine Vorstellung, warum man solchen Quatsch lassen sollte.
 Zitat von muadeep
ja, daß mit dem "STRMAIL" hatte ich schon gemacht!
ich poste mal die Anzeige nach "WRKENVVAR"
Irgendwie schaut die komisch aus !!!
Vieleicht is ja daran was falsch?
Mit Umgebungsvariablen arbeiten (*JOB)
Auswahl eingeben und Eingabetaste drücken.
1=Hinzufügen 2=Ändern 4=Entfernen 5=Details anzeigen 6=Drucken
Auswahl Name Wert
ICU_DATA '/QIBM/ProdData/OS400/icu/data'
LANG '/QSYS.LIB/DE_DE.LOCALE ' >
CLASSPATH '.:/JAVAUTIL/JAVAMAIL/ACTIVATION.JA' >
Wenn ich mir den CLASSPATH dann mit "5" anzeigen lassen,
sieht der wie folgtaus:
Umgebungsvariablen anzeigen (*JOB)
Name . . . . . . . . . : CLASSPATH
Wert . . . . . . . . . :
'.:/JAVAUTIL/JAVAMAIL/ACTIVATION.JAR:/JAVAUTIL/JAVA
MAIL/IMAP.JAR:/JAVAUTIL/JAVAMAIL/MAIL.JAR:/JAVAUTIL/JAVAMAIL/MAILAPI.JAR:/JAVAUT
IL/JAVAMAIL/SMTP.JAR:/JAVAUTIL/JAVAMAIL/'
Die Verzeichnise sind bei mir im IFS unter /JavaUtil/JavaMail (also genauso wie in der Beschreibung und wie bei dir).
Daran habe ich nicht's geändert!
Das mit dem Job-beenden bzw. Bildschirmsitzung beenden und neu starten hab ich auch immer gemacht!
Similar Threads
-
By TARASIK in forum IBM i Hauptforum
Antworten: 21
Letzter Beitrag: 30-03-11, 14:48
-
By Muchi in forum NEWSboard Java
Antworten: 2
Letzter Beitrag: 07-11-06, 12:00
-
By woki in forum NEWSboard Java
Antworten: 3
Letzter Beitrag: 06-06-06, 16:57
-
By muadeep in forum NEWSboard Java
Antworten: 0
Letzter Beitrag: 27-10-04, 14:07
-
By muadeep in forum NEWSboard Java
Antworten: 0
Letzter Beitrag: 27-10-04, 14:05
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks