-
Hallo zusammen,
ich habe mich vor ca. einem Jahr mit Java auf der AS/400 befasst. Out of the box war die Geschwindigkeit nicht so toll. Wie Dieter sagt, sollte man ein Programm im Batch laufen lassen, welches auf neue Jobs per Queue wartet. Solch ein Programm hatte ich damals geschrieben. Die Idee von Dieter ein Open Source Projekt zu erstellen finde ich sehr gut! Ich würde auch gerne mein Wissen mit einbringen...
Am besten schaltet man auch die Auto Performance der Speicherpools aus und erstellt einen eigenen Pool für die Java Anwendung.
Gruß
Michael
-
Ich denke, dies solltest du dir durchlesen:
Apache log4j 1.2 - Short introduction to log4j
Die Konfiguration wird über Parameter nicht über Classpath ermittelt.
-
@Baldur:
wenn kein ConfigFile benannt ist, sucht log4j beim ersten Anticken nach Start der JVM über den Classpath eine log4j.properties
@Muchi: Das Open Source Projekt gibt es schon, wer mitmachen will kann sich bei SourceForge oder auf meiner WebSeite den publizierten Stand holen und dann per Mail mit mir Kontakt aufnehmen
@LindnerSpezial: den SystemOut und SystemErr gibts immer und wenn keine Konsole dranhängt sollte der zumindest ins Joblog gehen, ansonsten würde ich mir mal ein kleines HelloWorld mit log4j zum testen schreiben, damit du dann auf der Konsole siehst wo es hakt
D*B
-
Soweit meine Erfahrung zeigt, ist STDOUT und STDERR auf NULL (also leer) zugewiesen, wenn kein Bildschirm verfügbar ist (Batch, oder wie hier SQL), es kann also keine Ausgaben geben.
-
dann gehts immer noch mit Gewalt im Java Programm:
System.out = new PrintStream(new FileOutputStream("MyPath/denkste.log", true);
D*B
 Zitat von Fuerchau
Soweit meine Erfahrung zeigt, ist STDOUT und STDERR auf NULL (also leer) zugewiesen, wenn kein Bildschirm verfügbar ist (Batch, oder wie hier SQL), es kann also keine Ausgaben geben.
-
Hallo!
Also mit "HelloWorld" funktioniert das, nachdem ich den Classpath der log4j.jar gesetzt habe und das Programm direkt mit java ... aufrufe.
In die log4j.log wird also geschrieben!
Nur wenn ich das gleiche in die Class einbaue, welche von SQL aufgerufen wird, funktioniert das nicht.
Gibt es eine Möglichkeit beim Anmelden eines Users einen Classpath zu setzen ohne den System Classpath zu verändern?
Das mit dem Sytem.out habe ich auch getestet! Das würde mir ja auch schon reichen! Funktioniert aber nicht, obwohl ich die Fehlende Klammer und in der Klasse import java.io.*; eingefügt habe!
/home/ExtDB.java:94: cannot assign a value to final variable out
System.out = new PrintStream(new FileOutputStream("/Home/SEC0495/log4j.log", true));
^
1 error
Gruß
Henning
-
Per User nützt das nichts, da die QZDA-Job's alle mit QUSER gestartet werden (JDBC läuft auch mit QZDA).
Ggf. musst du in deiner Main-Prozedur per System.getenv() und System.putenv() deine Umgebung anpassen.
-
System.setOut = new PrintStream(new FileOutputStream("/Home/SEC0495/log4j.log", true));
sollte es tun, ja wenn das nicht doch
System.setOut = new PrintStream(new FileOutputStream("/home/SEC0495/log4j.log", true));
heißen muss man beachte: home <> Home
D*B
-
 Zitat von BenderD
System.setOut = new PrintStream(new FileOutputStream("/Home/USER/log4j.log", true));
sollte es tun, ja wenn das nicht doch
System.setOut = new PrintStream(new FileOutputStream("/home/USER/log4j.log", true));
heißen muss man beachte: home <> Home
D*B
Geht Leider immer noch nicht!
Jetzt kommt ein anderer Fehler beim Wandeln:
javac -d /qibm/userdata/os400/sqllib/function /home/ExtDB.java -g
/home/ExtDB.java:97: cannot resolve symbol
symbol : variable setOut
location: class java.lang.System
System.setOut = new PrintStream(new FileOutputStream("/Home/USER/log4j.log", true));
^
1 error
$
-
schneller geschrieben als gelesen:
System.setOut( new PrintStream(new FileOutputStream("/Home/USER/log4j.log", true));
 Zitat von LindnerSpezial
Geht Leider immer noch nicht!
Jetzt kommt ein anderer Fehler beim Wandeln:
javac -d /qibm/userdata/os400/sqllib/function /home/ExtDB.java -g
/home/ExtDB.java:97: cannot resolve symbol
symbol : variable setOut
location: class java.lang.System
System.setOut = new PrintStream(new FileOutputStream("/Home/USER/log4j.log", true));
^
1 error
$
-
Danke Dieter!
Das funktioniert einwandfrei!
Aber ich habe da ein weiteres kleines Problem!
Bei uns ist das JDK 1.4 auf der iSeries, besser gesagt, wenn ich in QSH java -version eingebe wird 1.4 angezeigt.
Unter GO LICPGM --> 10 Anzeigen steht aber auch die 1.5(Ist glaube ich die Version 5 - warum auch immer) drin.
Wenn ich jetzt die Class Datei erstellen will kommt immer dieser Fehler:
javac -source 1.4 -d /qibm/userdata/os400/sqllib/function /home/ExtDBsql.java -g
/home/ExtDBsql.java:78: replace(char,char) in java.lang.String cannot be applied to (java.lang.String,java.lang.String)
parmWhere = sparmWhere.replace("+", "'");
1 error $
Das ^ steht unter dem Punkt vor replace.
Laut: String (Java 2 Platform SE v1.4.0)
sollte doch replace unterstützt werden?
Wenn ich das mit 1.5 compilieren will kommt folgender Fehler:
javac -source 1.5 -d /qibm/userdata/os400/sqllib/function /home/ExtDBsql.java -g
javac: invalid source release: 1.5
Usage: javac <options> <source files>
Gruß
Henning
-
Hallo,
Deine beiden Zeichen werden nicht als char, sondern als String erkannt und die Methode replace(String, String) gibt es nicht. Du könntest entweder vorher 2 char-Variablen mit den jeweiligen Zeichen erstellen und diese Variablen dann bei replace verwenden oder, falls Du alle Zeichen ersetzen willst, geht auch replaceAll. Diese Methode unterstützt nämlich (String, String).
Gruß,
KM
Similar Threads
-
By PeterKarsten in forum IBM i Hauptforum
Antworten: 8
Letzter Beitrag: 20-08-08, 12:52
-
By linguin in forum NEWSboard Linux
Antworten: 0
Letzter Beitrag: 03-01-07, 08:22
-
By cami in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 27-08-06, 17:31
-
By Christian.Hesse in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 04-08-06, 10:04
-
By binhierneu in forum NEWSboard Java
Antworten: 7
Letzter Beitrag: 19-10-04, 21:02
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