COBOL und Java

homer65

Top Contributor
Hallo Gemeinde,
ich experimentiere gerade damit ein Java Programm von einem COBOL Programm unter z/OS aus aufzurufen.
Das funktioniert grundsätzlich auch. Allerdings tue ich mich bei der Übergabe von Variablen schwer.
Ein einzelnes Byte läßt sich ohne Probleme von COBOL nach Java und umgekehrt von Java nach COBOL übertragen.
Und bei einfachen Datentypen sieht es auch ok aus.
Aber für praktische Zwecke sollten schon größere Datenblöcke übertragen werden.
Zum Beispiel wäre PIC X(1000) nach byte[1000] und umgekehrt schön.
Habe nur keine Idee wie das zu realisieren ist.
Habt ihr eine Idee?
Aber sagt bitte nicht ich sollte 1000 mal ein einzelnes Byte übertragen.
Gruß Christian
 

chalkbag

Bekanntes Mitglied
Wie machst du es denn im Moment, ehrlich gesagt hab ich keine Ahnung aber ich fände interessant zu sehen wie das funktioniert.

Nach meiner Vorstellung sollte man das evtl über eine SD mappen können, also eine seq. Datei rüberschieben und dann entsprechend mit der Satzstruktur auslesen?
 

homer65

Top Contributor
Nach meiner Vorstellung sollte man das evtl über eine SD mappen können, also eine seq. Datei rüberschieben und dann entsprechend mit der Satzstruktur auslesen?

Per SD ist nicht so doll.
Erstens ist es erheblich langsamer als per Memory.
Zweitens ist es auch nicht so flexibel. Per Memory kann ich einen kleinen Teil Daten rüberschieben und in abhängigkeit vom Ergebniss den nächsten Teil und so weiter und so fort. Bei einer Datei muß ich alle Daten auf einmal rüberschieben und habe keine Zwischenergebnisse.
 

theodosis

Mitglied
Interessant wie du die Brücke zwischen Java und COBOL gemacht hast.

Hast du über shared memory gedacht? Vieleicht Java unterstützt das nicht direct, das könnte aber mit JNI gemacht werden und umgekehrt von COBOL könntest du dasselbe oder ein anderes C programm benutzen um auf dem selben shared memory zuzugreifen.
 

Noctarius

Top Contributor
Es gibt doch jetzt eine Cobol Implementierung für die JVM und die .NET Runtime. Mir fällt nur gerade der Hersteller nicht ein.
 

homer65

Top Contributor
Interessant wie du die Brücke zwischen Java und COBOL gemacht hast.
Hast du über shared memory gedacht? Vieleicht Java unterstützt das nicht direct, das könnte aber mit JNI gemacht werden und umgekehrt von COBOL könntest du dasselbe oder ein anderes C programm benutzen um auf dem selben shared memory zuzugreifen.

C haben wir leider auch nicht zur Verfügung.
 
D

DieBeobachter

Gast
Hallo homer65,

aber der aktuelle "IBM Enterprise COBOL for z/OS"-Compiler (Version 4.2) ist vorhanden ?
 
D

DieBeobachter

Gast
Das macht nichts.

Also:

1) Lesen im "Programming Guide" (z.B. SC27-1412-03) das Kapitel 31 "Communicating with Java methods" (vor und
zurück und fluchen).

2) Sich mit "Java JNI" befassen.

3) "Nachschulung" für "Cobol ADDRESS".

4) Nochmals lesen das Kapitel 31 und dann großes Aha-Erlebnis (Beispiel "processing a Java int array")

5) Und Lösung schreiben (hier Beispiel für "Cobol ===> Java"):

Ziel "Java byte array" ===> "Java data type: byte[]" nach "Corresponding COBOL data type: object reference jbyteArray"

a) Im "Cobo"l-Programm sich ein "jbyteArray" besorgen mit "CALL NewByteArray"

b) Das "jbyteArray" mit Inhalt füllen mit "CALL SetByteArrayRegion"

c) Und dann "INVOKE" "Java"-Methode.

6) Glückliches Ende
 

homer65

Top Contributor
zu 1: Joh, habe ich schon, insbesondere das "fluchen" klappt ganz gut. :)
Das erste Problem ist direkt auf der ersten Seite.
Wo finde ich denn das JNI Copy Buch?
Habe schon gesucht und gesucht, ist aber nicht zu finden.
 
D

DieBeobachter

Gast
Hallo homer65,

vermutlich unter "/usr/lpp/cobol/include/JNI.cpy".

Die LKED-Karte für die Cobol-UP-DLL dann unter "/usr/lpp/cobol/lib/igzcjava.x".
 
U

uwe

Gast
Hallo zusammen,

ein ganz anderer Ansatz wäre einen anderen COBOL (Cross-) Compiler unter z/OS zu verwenden, der COBOL nach Java umsetzt. Wie COBOL nach Java umgesetzt wird ist für den COBOL Entwickler nicht relevant, da er wie gewohnt das COBOL Verhalten beibehält.

Da dann COBOL schon auf Java Ebene vorhanden ist, können Parameter ganz einfach zwischen beiden Welten ausgetauscht werden.

Eine viel ausdehnendere Frage wäre: muss z/OS bestehen bleiben, oder kann auch zLinux in Betracht gezogen werden?!?

viele grüße
uwe
 

homer65

Top Contributor
Hallo Uwe,
es geht darum einen Rechenkern, der bisher in COBOL programmiert war, durch Java zu ersetzen.
Dieser Rechenkern wird von verschiedensten COBOL Programmen in unterschiedlichen Systemen aufgerufen.
Es soll aber nur der Rechenkern neu gemacht werden und nicht unsere komplette Softwarelandschaft umgekrempelt werden.
 

uwe

Neues Mitglied
Hallo Christian,

schade. Denn das ist ein Super Alternative zu dem Mainframe COBOL Compiler. So wie ich das verstehe ist es bei dir andersherum, dass COBOL Bleibt und Module nach Java ausgelagert werden.

Bei den Meisten Anwendungslandschaften ist es anders herum. Da wurde die grafische Oberfläche zum Beispiel mit Java Servlet erstellt, der vorhandene Rechenkern, der noch in COBOL vorhanden ist, soll dann darin eingebunden werden.

Für genauere Informationen, wenn Interesse besteht, bitte per eMail schicken.

viele grüße
uwe
 

jaka

Neues Mitglied
Hallo zusammen,

Schaut euch doch mal den Foliensatz "Integrating COBOL with Java" von Tom Ross von der IBM an:

www-304.ibm.com/support/docview.wss?uid=swg27015223&aid=1&wv=1

Dort findet sich eine Menge interessanter Fakten dazu!

Viele Grüße,
Kalli
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
N was haltet ihr von COBOL? Softwareentwicklung 9
G Umwandung von Vb auf Java Softwareentwicklung 1
von Spotz Kommunikation zwischen Java und Container Orchestrator (Microservices) Softwareentwicklung 11
S Microservices in Java Spring: Nebenläufigkeitsprobleme lösen Softwareentwicklung 6
temi Elementfunktionen vs. Nichtelementfunktionen in Java Softwareentwicklung 20
R Umsetzungen in Java vs. Umsetzungen auf Datenbankebene Softwareentwicklung 9
L Module Eclipse Java 9 Softwareentwicklung 12
R Software-Architekt (Schwerpunkt Java) Softwareentwicklung 9
S VB.NET / C# als Java-Entwickler? Softwareentwicklung 2
J Java Kentnisse vertiefen oder andere Programmiersprache probieren? Softwareentwicklung 8
U Java vs. anderen plattformunabhängige Programmiersprachen Softwareentwicklung 8
S JNI Java from C Softwareentwicklung 0
H [Java]Regex Hilfe Softwareentwicklung 3
D Teamspeak Java html app Softwareentwicklung 5
N UML Komponenten als Java-Klassen abbilden Softwareentwicklung 4
S Java Anfänger hat Probleme mit Scanner Softwareentwicklung 6
C Lohnt es sich noch ein neues Projekt in C++ anstatt Java zu realisieren? Softwareentwicklung 4
U Java oder welche Sprache? Softwareentwicklung 98
MrWhite Ist Java gar nicht sooo objektorientiert??! Softwareentwicklung 16
J Java Long-Werte in C++ auslesen Softwareentwicklung 4
K Mit "Java" html-Seite entscripten Softwareentwicklung 6
Airwolf89 Theoretische Frage - In Java Java-Programme schreiben Softwareentwicklung 5
G Mischsprache aus Java & C# Softwareentwicklung 23
H Java als Backend, Javascript als View Softwareentwicklung 3
D Sind EJB Komponenten auch mit Java Swing nutzbar? Softwareentwicklung 8
U Decorator Pattern in der Java API Softwareentwicklung 6
J Java Software nach C++ portieren Softwareentwicklung 6
C Unterschiede: C++ vs. C# vs. Java Softwareentwicklung 21
G Umstieg Java/Oracle => C#/MSSQL Softwareentwicklung 13
A Jira durch Java ansprechen Softwareentwicklung 18
M Immutable Objekte und funktionales Programmieren in Java oder Scala Softwareentwicklung 34
B [Web 2.0] Java vs PHP Softwareentwicklung 28
Raidri Flex mit Java Softwareentwicklung 2
L Java + WCF Softwareentwicklung 9
Airwolf89 Java-Programm in C++ portieren Softwareentwicklung 4
T Kapselung nich vollständig umgesetzt in Java? Softwareentwicklung 4
J Korpus mit Python einlesen - weiterbearbeiten mit Java Softwareentwicklung 4
N c# nach java Softwareentwicklung 14
K Suche freies UML Tool um aus .java dateien Diagramme zu. Softwareentwicklung 8
D Java in KLassen, schon vorhanden? Softwareentwicklung 3
B Was ist besser für Grafiken? Java oder C#? Softwareentwicklung 9
R Java Passwort verschlüsseln --> kompliziert! wirklich doo Softwareentwicklung 13
F vorteile php gegenüber java? Softwareentwicklung 46
M Umwandlung von String in java.sql.Date Softwareentwicklung 2
lolkind Iso Datein per Java über Windows XP brennen Softwareentwicklung 13
U [Diskussion] Java vs. C# Softwareentwicklung 208
E Java Programm distributen Softwareentwicklung 35
J Hardware zugriff mit java? Softwareentwicklung 4
N Für und Wieder von Java und .NET (primär C#) | Performance Softwareentwicklung 6
G java.lang.ArrayIndexOutOfBoundsException Softwareentwicklung 5
E Default Java unter Linux aendern? Softwareentwicklung 3
S arabische Buchstaben in java ?:L Softwareentwicklung 3
L Noch 'ne Perl-Frage. Kehre dann auch reumütig zu Java zurück Softwareentwicklung 10
G Serveranbindung mit java Softwareentwicklung 24
P Grafik-Programm mit JAVA? Softwareentwicklung 21
G Umstieg von Delphi zu JAVA (wichtige Fragen!) Softwareentwicklung 41
F Welche Sprache sieht ähnlich aus wie Java? Softwareentwicklung 7
T Suche A Star Java Beispielprogramm Softwareentwicklung 2
D C# zu Java - Übersetzer gesucht. Softwareentwicklung 3
F Windows Media Player in Java? Softwareentwicklung 11
C C code in java umschreiben Softwareentwicklung 9
O java und c# - die zweite. Softwareentwicklung 7
S Problem PJIRC java-applet Softwareentwicklung 4
U Geeignete Plattform für Projekt (JSP, PHP, Java-Anwendung) Softwareentwicklung 7
G C++ in JAVA verpacken Softwareentwicklung 2
D C# vs. java Softwareentwicklung 16
G Darstellung von Java-Projekten mit UML Softwareentwicklung 3
E Java & Performance Softwareentwicklung 9
T Brauche für meinen Java-Code dringend Hilfe Softwareentwicklung 4
B Wo bekommt man fertige Java-Programme (z.B. für Lsg LGS) Softwareentwicklung 3
W Herangehensweise an ein Java Programm Softwareentwicklung 4
B Programmierung eines 8051-Assemblers unter Java Softwareentwicklung 3
M Bidirektionale Assoziazion in Java realisieren? Softwareentwicklung 3
J Java <-> C# Softwareentwicklung 1
S c# schneller java - wieso ? Softwareentwicklung 12
D C++ und Java Softwareentwicklung 61

Ähnliche Java Themen

Neue Themen


Oben