PDA

View Full Version : JAR File auf die AS/400 bekommen?



LoCal
20-02-04, 16:41
Hallo,

ich hab wieder mal ne Frage. Wie bekomme ich das ein Jar-File auf die AS/400?
Mein Anwendung läuft bestens auf einem UNIX server und ich wollte nun testen ob sie auch auf der AS/400 das tut was sie soll. Nur über das QDLS und CPYFRMPCD krieg ich sie nicht rüber.

Danke schonmal im vorraus.

LoCal

BenderD
20-02-04, 16:48
Hallo LoCal,

am Besten über ftp, binary nicht vergessen. Alternativ geht auch ein share über NetServer, NFS oder QNTC.
Der Aufruf erfolgt dann am einfachsten über Qshell (unix like command Interpreter) den kriegt man interaktiv über den Command QSH; an der Qshell kann man ganz normal java mit allen parametern aufrufen zum starten. Dem Command QSH kann man auch gleich im Parameter CMD den Aufruf mitgeben.

Finger weg von OS400 Command JAVA und dem ganzen Zinnober, inklusive CRTJVAPGM und dem ganzen Unfug.

mfg

Dieter Bender

LoCal
20-02-04, 17:17
Danke für die Antwort.

Problem is, dass ich Java-Programmierer bin, aber meine Sachen bis jetzt nur auf Unix oder Windumm laufen mussten.
Ich habe zwar auch ne Ausbildung auf AS/400 aber die beschränkt sich auf Systemgrundlagen (kleiner Admin :) und RPG und CL Programmierung.

Das ganze funktioniert sehr schön...
nur habe ich noch eine Frage.. wie schreibe ich in eine AS/400 datei?
Also nciht mit SQL?
Und wie erstelle schreibe ich in eine Spooldatei?

Vielen Dank.

LoCal

BenderD
20-02-04, 18:24
Hallo Local,
<quote>
Problem is, dass ich Java-Programmierer bin, aber meine Sachen bis jetzt nur auf Unix oder Windumm laufen mussten.
Ich habe zwar auch ne Ausbildung auf AS/400 aber die beschränkt sich auf Systemgrundlagen (kleiner Admin und RPG und CL Programmierung.
</quote>

Das ist kein Problem, das macht es einfacher!!!

AS400 Datei ist Datenbank, da gibt es zwei JDBC Treiber, die bekommt man automatisch mit dem Betriebssystem beide mit. Ein Typ 2 Treiber (sogenannter native) nur für lokale Zugriffe und einen Typ 4 Treiber (sogenannter Toolbox), der überall und über Netzwerk geht. Damit kann man über JDBC und SQL auf die AS400 Datenbank losgehen, wie man das sonst auch macht.
Streamfiles kann man ganz normal mit den dafür vorgesehenen Javaklassen verarbeiten.
Mit der Print Unterstützung sieht es nicht so gut aus, die Printklassen gehören in Java ja zu AWT (da gibt es nur eine Murks Variante remoteAWT und ein XWindows Beta, oder eher Gamma für Version 5.2).
Spoolfiles, sprich SCS wäre für Java wohl lachhaft, da würde ich pdf generieren.
Wenn denn wirklich SCS sein soll, dann bleibt Toolbox Spoolfile Klassen, ich werde nicht müde zu sagen, Finger weg von diesem Quatsch!!! Dann schon eher Ausgabe in eine Datei und CPYF auf eine Spooldatei per stored Procedure Aufruf von QCMDEXC hinterhergeschickt.
Goodnews ist: Java ist Plattform unabhängig!!! Mach alles so, wie Du es auf Unix oder Windoofs auch machst.

mfg

Dieter Bender

LoCal
26-02-04, 07:19
Hallo,

erstmal vielen Dank für die vielen Infos.
Das mit der Plattformunabhängigkeit war mir schon durchaus bewusst, nur wusste ich nicht, dass die AS/400 doch ein UNIX-ännliches Dateisystem zur Verfügung stellt. Mir wurde immer nur das "Bibliothekensystem" vorgestellt und darum hatte ich etwas "bedenken" was die Plattformunabhängigkeit betrifft.
Nunja...und weil ich nur diese Ebene kannte war ich mir mit der Dateiausgabe auch nicht so sicher.
Mit dem Drucken muss ich dir völlig recht geben.. is unter Java Horror... soll sich aber mit 1.4 geändert haben nur habe ich das noch nicht ausprobiert.... hatte noch keine Zeit dazu und war auch
noch keine Anforderung.

Jedenfalls noch mal vielen Dank für die Infos

BenderD
26-02-04, 08:51
Hallo LoCal,

<quote>
Das mit der Plattformunabhängigkeit war mir schon durchaus bewusst, nur wusste ich nicht, dass die AS/400 doch ein UNIX-ännliches Dateisystem zur Verfügung stellt.
</quote>

Sie hat sogar eins, das Unix konform ist (ich meine BSD irgendwas), selbiges befindet sich unterhalb von /QopenSys
und schau dir mal die Qshell an (starten mit QSH) die kann shellskripte und die wichtigsten unix commands incl. java, javac, jar, ...und man kann beim Startcommand QSH im Parameter CMD einen Aufruf mitgeben, was will man mehr.

<quote>
Mit dem Drucken muss ich dir völlig recht geben.. is unter Java Horror... soll sich aber mit 1.4 geändert haben nur habe ich das noch nicht ausprobiert.... hatte noch keine Zeit dazu und war auch
noch keine Anforderung.
</quote>

Du weisst nicht was Horror ist, alles was drucken aus java heisst ist auf as400 noch schlechter, weil nicht oder nicht Produktionsreif implementiert. Hier ist es wirklich am einfachsten pdf zu generieren.

mfg

Dieter Bender

LoCal
26-02-04, 09:07
Ja, in der QShell hab ich mich auch gleich mal sehr wohlgefühlt. BSD is eh meine heimat :)

Hmm.. mit dem drucken muss ich mir dann wohl was einfallen lassen, weil das wird bei uns doch oft gebraucht.. aber evtl über CPYFRMPCD oder so.. also halt mit etwas womit ich von der "ursprünglichen" umgebung darauf zugreifen kann.

PDF-Erstellung ist hier wahrscheinlich nicht der weisheit letzter schluss, weil auch viele etiketten gedruckt werden müssen.

BenderD
26-02-04, 09:41
Hallo LoCal,

ein einfacher WorkAround für drucken von einfachen Spools (SCS) auf as400 ist die Ausgabe in ein tempfile und dann ein CPYF auf ein Printfile per Aufruf einer stored Procedure (QCMDEXC als stored Procedure registrieren)

Wenn es sich bei den Etiketten um Endlosetiketten von der Rolle, ausgedruckt auf Druckern die viel kosten und (drucktechnisch) nix können handelt, dann könnte das sein.

mfg

Dieter Bender