Einführung Java Komponenten in RPG           AppServer4RPG       Beispiel im VergleichHinter den Kulissen von ArdGate     ...
Einführung                                                     Vorstellung                      Java Komponenten in RPG   ...
Einführung                                                 Vorstellung                   Java Komponenten in RPG          ...
Einführung                                                 Vorstellung                   Java Komponenten in RPG          ...
Einführung                                                 Vorstellung                   Java Komponenten in RPG          ...
Einführung                                                 Vorstellung                   Java Komponenten in RPG          ...
Einführung                                                 Vorstellung                   Java Komponenten in RPG          ...
Einführung                                                 Vorstellung                   Java Komponenten in RPG          ...
Einführung                                                 Vorstellung                   Java Komponenten in RPG          ...
Einführung                                              Vorstellung                Java Komponenten in RPG                ...
Einführung                                              Vorstellung                Java Komponenten in RPG                ...
Einführung                                              Vorstellung                Java Komponenten in RPG                ...
Einführung                                              Vorstellung                Java Komponenten in RPG                ...
Einführung                                             Wofür braucht man das?               Java Komponenten in RPG       ...
Einführung                                             Wofür braucht man das?               Java Komponenten in RPG       ...
Einführung                                             Wofür braucht man das?               Java Komponenten in RPG       ...
Einführung                                             Wofür braucht man das?               Java Komponenten in RPG       ...
Einführung                                             Wofür braucht man das?               Java Komponenten in RPG       ...
Einführung                                             Wofür braucht man das?               Java Komponenten in RPG       ...
Einführung                                             Wofür braucht man das?               Java Komponenten in RPG       ...
Einführung                                             Wofür braucht man das?               Java Komponenten in RPG       ...
Einführung                                            Wofür braucht man das?              Java Komponenten in RPG         ...
Einführung                                            Wofür braucht man das?              Java Komponenten in RPG         ...
Einführung                                            Wofür braucht man das?              Java Komponenten in RPG         ...
Einführung                                            Wofür braucht man das?              Java Komponenten in RPG         ...
Einführung                                            Wofür braucht man das?              Java Komponenten in RPG         ...
Einführung                                            Wofür braucht man das?              Java Komponenten in RPG         ...
Einführung                                               Architektur von AppServer4RPG                 Java Komponenten in...
Einführung                                               Architektur von AppServer4RPG                 Java Komponenten in...
Einführung                                               Architektur von AppServer4RPG                 Java Komponenten in...
Einführung                                               Architektur von AppServer4RPG                 Java Komponenten in...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung                                              Architektur von AppServer4RPG                Java Komponenten in R...
Einführung                                              Architektur von AppServer4RPG                Java Komponenten in R...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung                                             Architektur von AppServer4RPG               Java Komponenten in RPG...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML                 Java Komponenten in RPG       Die RUNJVA Variante                   ...
Einführung   Generierung PDF aus HTML                 Java Komponenten in RPG       Die RUNJVA Variante                   ...
Einführung   Generierung PDF aus HTML                 Java Komponenten in RPG       Die RUNJVA Variante                   ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML               Java Komponenten in RPG       Die RUNJVA Variante                     ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML                 Java Komponenten in RPG       Die RUNJVA Variante                   ...
Einführung   Generierung PDF aus HTML                 Java Komponenten in RPG       Die RUNJVA Variante                   ...
Einführung   Generierung PDF aus HTML                 Java Komponenten in RPG       Die RUNJVA Variante                   ...
Einführung   Generierung PDF aus HTML                Java Komponenten in RPG       Die RUNJVA Variante                    ...
Einführung   Generierung PDF aus HTML                Java Komponenten in RPG       Die RUNJVA Variante                    ...
Einführung   Generierung PDF aus HTML                Java Komponenten in RPG       Die RUNJVA Variante                    ...
Einführung   Generierung PDF aus HTML                Java Komponenten in RPG       Die RUNJVA Variante                    ...
Einführung   Generierung PDF aus HTML                Java Komponenten in RPG       Die RUNJVA Variante                    ...
Einführung   Generierung PDF aus HTML                Java Komponenten in RPG       Die RUNJVA Variante                    ...
Einführung   Generierung PDF aus HTML              Java Komponenten in RPG       Die RUNJVA Variante                      ...
Einführung   Generierung PDF aus HTML             Java Komponenten in RPG       Die RUNJVA Variante                       ...
Nächste SlideShare
Wird geladen in …5
×

App server4rp gd - German

804 Aufrufe

Veröffentlicht am

COMMON Europe Congress 2012 - Vienna

0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
804
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
2
Aktionen
Geteilt
0
Downloads
1
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

App server4rp gd - German

  1. 1. Einführung Java Komponenten in RPG AppServer4RPG Beispiel im VergleichHinter den Kulissen von ArdGate effiziente Aufrufe von Java aus RPG Dieter Bender Dieter Bender Hinter den Kulissen von ArdGate
  2. 2. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichVorstellung WWW.BENDER-DV.DE - Dieter@Bender-DV.de Dieter Bender, D35435 Wettenberg AS/400* Freelancer Java, SQL, ILE RPG, COBOL Anwendungs-Design, Datenbanken Kurse: Java, SQL, ILE RPG Open Source Komponenten ArdGate: SQL Zugriffe von AS400 auf alle Datenbanken AppServer4RPG: schnelle, skalierbare Zugriffe aus RPG auf Java einige RPG Komponenten *) AS/400 := AS/400 und alle kompatiblen Systeme Dieter Bender Hinter den Kulissen von ArdGate
  3. 3. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichArdGate im Überblick *ARDPGM zwingend native JDBC zwingend Java sehr wenig RPG (blau) viel Java (rot) viele calls von Java aus RPG viele Benutzer Umgebung unbekannt Dieter Bender Hinter den Kulissen von ArdGate
  4. 4. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichArdGate im Überblick *ARDPGM zwingend native JDBC zwingend Java sehr wenig RPG (blau) viel Java (rot) viele calls von Java aus RPG viele Benutzer Umgebung unbekannt Dieter Bender Hinter den Kulissen von ArdGate
  5. 5. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichArdGate im Überblick *ARDPGM zwingend native JDBC zwingend Java sehr wenig RPG (blau) viel Java (rot) viele calls von Java aus RPG viele Benutzer Umgebung unbekannt Dieter Bender Hinter den Kulissen von ArdGate
  6. 6. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichArdGate im Überblick *ARDPGM zwingend native JDBC zwingend Java sehr wenig RPG (blau) viel Java (rot) viele calls von Java aus RPG viele Benutzer Umgebung unbekannt Dieter Bender Hinter den Kulissen von ArdGate
  7. 7. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichArdGate im Überblick *ARDPGM zwingend native JDBC zwingend Java sehr wenig RPG (blau) viel Java (rot) viele calls von Java aus RPG viele Benutzer Umgebung unbekannt Dieter Bender Hinter den Kulissen von ArdGate
  8. 8. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichArdGate im Überblick *ARDPGM zwingend native JDBC zwingend Java sehr wenig RPG (blau) viel Java (rot) viele calls von Java aus RPG viele Benutzer Umgebung unbekannt Dieter Bender Hinter den Kulissen von ArdGate
  9. 9. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichArdGate im Überblick *ARDPGM zwingend native JDBC zwingend Java sehr wenig RPG (blau) viel Java (rot) viele calls von Java aus RPG viele Benutzer Umgebung unbekannt Dieter Bender Hinter den Kulissen von ArdGate
  10. 10. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichWarum Gleiberg Projekt? AppServer4RPG meine Heimat Open Source zum Schutz des Copyrights eines Freelancers Ergebnis von mehr als 10 Jahren Projekte und Kurse Dieter Bender Hinter den Kulissen von ArdGate
  11. 11. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichWarum Gleiberg Projekt? AppServer4RPG meine Heimat Open Source zum Schutz des Copyrights eines Freelancers Ergebnis von mehr als 10 Jahren Projekte und Kurse Dieter Bender Hinter den Kulissen von ArdGate
  12. 12. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichWarum Gleiberg Projekt? AppServer4RPG meine Heimat Open Source zum Schutz des Copyrights eines Freelancers Ergebnis von mehr als 10 Jahren Projekte und Kurse Dieter Bender Hinter den Kulissen von ArdGate
  13. 13. Einführung Vorstellung Java Komponenten in RPG Architektur von ArdGate AppServer4RPG Das Gleiberg Projekt Beispiel im VergleichWarum Gleiberg Projekt? AppServer4RPG meine Heimat Open Source zum Schutz des Copyrights eines Freelancers Ergebnis von mehr als 10 Jahren Projekte und Kurse Dieter Bender Hinter den Kulissen von ArdGate
  14. 14. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichJava ist ungleich mächtiger als RPG Java Anwendungen sind Multithreaded Es gibt viele frei verfügbare Java Komponenten Open Source Tools, die man für RPG für Geld nicht bekommt. Programmierer Performace mit OO ungleich größer (bei vergleichbarer Erfahrung) Beispiele für Komponenten: WebServices und XML Erstellung PDF, HTML and EXCEL Datenbankzugriffe mit JDBC Dieter Bender Hinter den Kulissen von ArdGate
  15. 15. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichJava ist ungleich mächtiger als RPG Java Anwendungen sind Multithreaded Es gibt viele frei verfügbare Java Komponenten Open Source Tools, die man für RPG für Geld nicht bekommt. Programmierer Performace mit OO ungleich größer (bei vergleichbarer Erfahrung) Beispiele für Komponenten: WebServices und XML Erstellung PDF, HTML and EXCEL Datenbankzugriffe mit JDBC Dieter Bender Hinter den Kulissen von ArdGate
  16. 16. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichJava ist ungleich mächtiger als RPG Java Anwendungen sind Multithreaded Es gibt viele frei verfügbare Java Komponenten Open Source Tools, die man für RPG für Geld nicht bekommt. Programmierer Performace mit OO ungleich größer (bei vergleichbarer Erfahrung) Beispiele für Komponenten: WebServices und XML Erstellung PDF, HTML and EXCEL Datenbankzugriffe mit JDBC Dieter Bender Hinter den Kulissen von ArdGate
  17. 17. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichJava ist ungleich mächtiger als RPG Java Anwendungen sind Multithreaded Es gibt viele frei verfügbare Java Komponenten Open Source Tools, die man für RPG für Geld nicht bekommt. Programmierer Performace mit OO ungleich größer (bei vergleichbarer Erfahrung) Beispiele für Komponenten: WebServices und XML Erstellung PDF, HTML and EXCEL Datenbankzugriffe mit JDBC Dieter Bender Hinter den Kulissen von ArdGate
  18. 18. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichJava ist ungleich mächtiger als RPG Java Anwendungen sind Multithreaded Es gibt viele frei verfügbare Java Komponenten Open Source Tools, die man für RPG für Geld nicht bekommt. Programmierer Performace mit OO ungleich größer (bei vergleichbarer Erfahrung) Beispiele für Komponenten: WebServices und XML Erstellung PDF, HTML and EXCEL Datenbankzugriffe mit JDBC Dieter Bender Hinter den Kulissen von ArdGate
  19. 19. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichRPG ruft Java auf RUNJVA und QSH CMD(java ...) nur für Java Applikationen keine Rückgabewerte möglich (außer Errorlevel) damit kriegt man jeden Rechner platt! Java stored Procedures Methoden müssen static sein skaliert schlecht im embedded SQL im SQL server Modus (CLI) keien wirksame Kontrolle der JVM JNI Java native Interface JNI ist vorgesehen für Implementierung der JVM und der Java Tools unlesbare und schlecht wartbare Programme Fehlerbehandlung und Analyse aufwändig Dieter Bender Hinter den Kulissen von ArdGate
  20. 20. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichRPG ruft Java auf RUNJVA und QSH CMD(java ...) nur für Java Applikationen keine Rückgabewerte möglich (außer Errorlevel) damit kriegt man jeden Rechner platt! Java stored Procedures Methoden müssen static sein skaliert schlecht im embedded SQL im SQL server Modus (CLI) keien wirksame Kontrolle der JVM JNI Java native Interface JNI ist vorgesehen für Implementierung der JVM und der Java Tools unlesbare und schlecht wartbare Programme Fehlerbehandlung und Analyse aufwändig Dieter Bender Hinter den Kulissen von ArdGate
  21. 21. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichRPG ruft Java auf RUNJVA und QSH CMD(java ...) nur für Java Applikationen keine Rückgabewerte möglich (außer Errorlevel) damit kriegt man jeden Rechner platt! Java stored Procedures Methoden müssen static sein skaliert schlecht im embedded SQL im SQL server Modus (CLI) keien wirksame Kontrolle der JVM JNI Java native Interface JNI ist vorgesehen für Implementierung der JVM und der Java Tools unlesbare und schlecht wartbare Programme Fehlerbehandlung und Analyse aufwändig Dieter Bender Hinter den Kulissen von ArdGate
  22. 22. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichWarum ich kein embedded Java in RPG mag Kontrolle der implizit gestarteten JVM nahezu unmöglich Verwendung normaler Java Komponentem führt zu embedded Java in RPG aufwändig zu programmieren, testen und ändern erste Aufruf ist quälend langsam, zahlreiche JVMs machen jeden Rechner platt (zur Freude von IBM) JNI Unterstützung des RPG Compilers ist schlampig implementiert, abstürzende JVMs nicht kontrollierbar! (keine abstürzenden JVMs sonst beobachtet!!!) zu viel Aufwand für klägliche Ergebnisse Dieter Bender Hinter den Kulissen von ArdGate
  23. 23. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichWarum ich kein embedded Java in RPG mag Kontrolle der implizit gestarteten JVM nahezu unmöglich Verwendung normaler Java Komponentem führt zu embedded Java in RPG aufwändig zu programmieren, testen und ändern erste Aufruf ist quälend langsam, zahlreiche JVMs machen jeden Rechner platt (zur Freude von IBM) JNI Unterstützung des RPG Compilers ist schlampig implementiert, abstürzende JVMs nicht kontrollierbar! (keine abstürzenden JVMs sonst beobachtet!!!) zu viel Aufwand für klägliche Ergebnisse Dieter Bender Hinter den Kulissen von ArdGate
  24. 24. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichWarum ich kein embedded Java in RPG mag Kontrolle der implizit gestarteten JVM nahezu unmöglich Verwendung normaler Java Komponentem führt zu embedded Java in RPG aufwändig zu programmieren, testen und ändern erste Aufruf ist quälend langsam, zahlreiche JVMs machen jeden Rechner platt (zur Freude von IBM) JNI Unterstützung des RPG Compilers ist schlampig implementiert, abstürzende JVMs nicht kontrollierbar! (keine abstürzenden JVMs sonst beobachtet!!!) zu viel Aufwand für klägliche Ergebnisse Dieter Bender Hinter den Kulissen von ArdGate
  25. 25. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichWarum ich kein embedded Java in RPG mag Kontrolle der implizit gestarteten JVM nahezu unmöglich Verwendung normaler Java Komponentem führt zu embedded Java in RPG aufwändig zu programmieren, testen und ändern erste Aufruf ist quälend langsam, zahlreiche JVMs machen jeden Rechner platt (zur Freude von IBM) JNI Unterstützung des RPG Compilers ist schlampig implementiert, abstürzende JVMs nicht kontrollierbar! (keine abstürzenden JVMs sonst beobachtet!!!) zu viel Aufwand für klägliche Ergebnisse Dieter Bender Hinter den Kulissen von ArdGate
  26. 26. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichWarum ich kein embedded Java in RPG mag Kontrolle der implizit gestarteten JVM nahezu unmöglich Verwendung normaler Java Komponentem führt zu embedded Java in RPG aufwändig zu programmieren, testen und ändern erste Aufruf ist quälend langsam, zahlreiche JVMs machen jeden Rechner platt (zur Freude von IBM) JNI Unterstützung des RPG Compilers ist schlampig implementiert, abstürzende JVMs nicht kontrollierbar! (keine abstürzenden JVMs sonst beobachtet!!!) zu viel Aufwand für klägliche Ergebnisse Dieter Bender Hinter den Kulissen von ArdGate
  27. 27. Einführung Wofür braucht man das? Java Komponenten in RPG Java Aufrufe aus RPG AppServer4RPG RPGs Java Unterstützung Beispiel im VergleichWarum ich kein embedded Java in RPG mag Kontrolle der implizit gestarteten JVM nahezu unmöglich Verwendung normaler Java Komponentem führt zu embedded Java in RPG aufwändig zu programmieren, testen und ändern erste Aufruf ist quälend langsam, zahlreiche JVMs machen jeden Rechner platt (zur Freude von IBM) JNI Unterstützung des RPG Compilers ist schlampig implementiert, abstürzende JVMs nicht kontrollierbar! (keine abstürzenden JVMs sonst beobachtet!!!) zu viel Aufwand für klägliche Ergebnisse Dieter Bender Hinter den Kulissen von ArdGate
  28. 28. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichArchitektur Überblick eine vorgestartete JVM arbeitet für viele RPG Clients Kommunikation asynchron erweiterbares EventHandler Konzept RPG verwendet Datenstrukturen als Parameter (Java übersetzt) Dieter Bender Hinter den Kulissen von ArdGate
  29. 29. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichArchitektur Überblick eine vorgestartete JVM arbeitet für viele RPG Clients Kommunikation asynchron erweiterbares EventHandler Konzept RPG verwendet Datenstrukturen als Parameter (Java übersetzt) Dieter Bender Hinter den Kulissen von ArdGate
  30. 30. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichArchitektur Überblick eine vorgestartete JVM arbeitet für viele RPG Clients Kommunikation asynchron erweiterbares EventHandler Konzept RPG verwendet Datenstrukturen als Parameter (Java übersetzt) Dieter Bender Hinter den Kulissen von ArdGate
  31. 31. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichArchitektur Überblick eine vorgestartete JVM arbeitet für viele RPG Clients Kommunikation asynchron erweiterbares EventHandler Konzept RPG verwendet Datenstrukturen als Parameter (Java übersetzt) Dieter Bender Hinter den Kulissen von ArdGate
  32. 32. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDie RPG Sicht RPG ruft Java Methode auf zu lesen als: outDS = ARDPGM(inDS) Dieter Bender Hinter den Kulissen von ArdGate
  33. 33. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDie RPG Sicht RPG ruft Java Methode auf zu lesen als: outDS = ARDPGM(inDS) Dieter Bender Hinter den Kulissen von ArdGate
  34. 34. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDie Java Sicht Action: was soll aufgerufen werden? Was muss ein EventHandler können? Dieter Bender Hinter den Kulissen von ArdGate
  35. 35. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDie Java Sicht Action: was soll aufgerufen werden? Was muss ein EventHandler können? Dieter Bender Hinter den Kulissen von ArdGate
  36. 36. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichHybrid Objekte Plain Old RPG DataStructure Plain Old Java Object Dieter Bender Hinter den Kulissen von ArdGate
  37. 37. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichHybrid Objekte Plain Old RPG DataStructure Plain Old Java Object Dieter Bender Hinter den Kulissen von ArdGate
  38. 38. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDoppelgesichtige Objekte als Dolmetscher PORDS2POJO:= ein Java Objekt, das die Übersetzung von Binärdaten (DS) in eine Java Bean kapselt. POJO mit allen Komponenten einer PORDS als Java Typen Objekt Variable für die Binärdaten der PORDS ( private byte[] huddle ) setter und getter für huddle zeigt zu jeder Zeit die Java und die RPG Sicht derselben Daten häufig nur eine Richtung implementiert (DS rein Java Felder raus oder umgekehrt) Dieter Bender Hinter den Kulissen von ArdGate
  39. 39. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDoppelgesichtige Objekte als Dolmetscher PORDS2POJO:= ein Java Objekt, das die Übersetzung von Binärdaten (DS) in eine Java Bean kapselt. POJO mit allen Komponenten einer PORDS als Java Typen Objekt Variable für die Binärdaten der PORDS ( private byte[] huddle ) setter und getter für huddle zeigt zu jeder Zeit die Java und die RPG Sicht derselben Daten häufig nur eine Richtung implementiert (DS rein Java Felder raus oder umgekehrt) Dieter Bender Hinter den Kulissen von ArdGate
  40. 40. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDoppelgesichtige Objekte als Dolmetscher PORDS2POJO:= ein Java Objekt, das die Übersetzung von Binärdaten (DS) in eine Java Bean kapselt. POJO mit allen Komponenten einer PORDS als Java Typen Objekt Variable für die Binärdaten der PORDS ( private byte[] huddle ) setter und getter für huddle zeigt zu jeder Zeit die Java und die RPG Sicht derselben Daten häufig nur eine Richtung implementiert (DS rein Java Felder raus oder umgekehrt) Dieter Bender Hinter den Kulissen von ArdGate
  41. 41. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDoppelgesichtige Objekte als Dolmetscher PORDS2POJO:= ein Java Objekt, das die Übersetzung von Binärdaten (DS) in eine Java Bean kapselt. POJO mit allen Komponenten einer PORDS als Java Typen Objekt Variable für die Binärdaten der PORDS ( private byte[] huddle ) setter und getter für huddle zeigt zu jeder Zeit die Java und die RPG Sicht derselben Daten häufig nur eine Richtung implementiert (DS rein Java Felder raus oder umgekehrt) Dieter Bender Hinter den Kulissen von ArdGate
  42. 42. Einführung Architektur von AppServer4RPG Java Komponenten in RPG Das EventHandler Interface AppServer4RPG Das PORDS2POJO Muster Beispiel im VergleichDoppelgesichtige Objekte als Dolmetscher PORDS2POJO:= ein Java Objekt, das die Übersetzung von Binärdaten (DS) in eine Java Bean kapselt. POJO mit allen Komponenten einer PORDS als Java Typen Objekt Variable für die Binärdaten der PORDS ( private byte[] huddle ) setter und getter für huddle zeigt zu jeder Zeit die Java und die RPG Sicht derselben Daten häufig nur eine Richtung implementiert (DS rein Java Felder raus oder umgekehrt) Dieter Bender Hinter den Kulissen von ArdGate
  43. 43. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionAus dem richtigen Leben gegriffen Die Anforderung: RPG Applikation generiert HTML Rechnung Java macht aus HTML und CSS eine PDF Datei Java seitig gibt es iText und Flying Saucer Bedingung: 10.000 Rechnungen in 6 h erste Versuche (Kunde) mit HTML2PDF4I: 30 sec. bis mehrere Minuten pro Rechnung! kurze Gegenprüfung von mir mit Wintel: Sekundenbruchteile! Dieter Bender Hinter den Kulissen von ArdGate
  44. 44. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionAus dem richtigen Leben gegriffen Die Anforderung: RPG Applikation generiert HTML Rechnung Java macht aus HTML und CSS eine PDF Datei Java seitig gibt es iText und Flying Saucer Bedingung: 10.000 Rechnungen in 6 h erste Versuche (Kunde) mit HTML2PDF4I: 30 sec. bis mehrere Minuten pro Rechnung! kurze Gegenprüfung von mir mit Wintel: Sekundenbruchteile! Dieter Bender Hinter den Kulissen von ArdGate
  45. 45. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionAus dem richtigen Leben gegriffen Die Anforderung: RPG Applikation generiert HTML Rechnung Java macht aus HTML und CSS eine PDF Datei Java seitig gibt es iText und Flying Saucer Bedingung: 10.000 Rechnungen in 6 h erste Versuche (Kunde) mit HTML2PDF4I: 30 sec. bis mehrere Minuten pro Rechnung! kurze Gegenprüfung von mir mit Wintel: Sekundenbruchteile! Dieter Bender Hinter den Kulissen von ArdGate
  46. 46. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionAus dem richtigen Leben gegriffen Die Anforderung: RPG Applikation generiert HTML Rechnung Java macht aus HTML und CSS eine PDF Datei Java seitig gibt es iText und Flying Saucer Bedingung: 10.000 Rechnungen in 6 h erste Versuche (Kunde) mit HTML2PDF4I: 30 sec. bis mehrere Minuten pro Rechnung! kurze Gegenprüfung von mir mit Wintel: Sekundenbruchteile! Dieter Bender Hinter den Kulissen von ArdGate
  47. 47. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionAus dem richtigen Leben gegriffen Die Anforderung: RPG Applikation generiert HTML Rechnung Java macht aus HTML und CSS eine PDF Datei Java seitig gibt es iText und Flying Saucer Bedingung: 10.000 Rechnungen in 6 h erste Versuche (Kunde) mit HTML2PDF4I: 30 sec. bis mehrere Minuten pro Rechnung! kurze Gegenprüfung von mir mit Wintel: Sekundenbruchteile! Dieter Bender Hinter den Kulissen von ArdGate
  48. 48. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionHTML2PDF4I von Aaron Bartell Artikel in IBM Systems Magazine Open Source auf http://mowyourlawn.com Java Applikation als Aufrufhülse for iText und Flying Saucer Aufruf aus RPG mit RUNJVA und gebasteltem Classpath Auf Holgers PUB1 10 sec. für jeden Aufruf neuer Job und Start einer JVM langsam, skaliert aber linear (JVM beendet sich) Dieter Bender Hinter den Kulissen von ArdGate
  49. 49. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionHTML2PDF4I von Aaron Bartell Artikel in IBM Systems Magazine Open Source auf http://mowyourlawn.com Java Applikation als Aufrufhülse for iText und Flying Saucer Aufruf aus RPG mit RUNJVA und gebasteltem Classpath Auf Holgers PUB1 10 sec. für jeden Aufruf neuer Job und Start einer JVM langsam, skaliert aber linear (JVM beendet sich) Dieter Bender Hinter den Kulissen von ArdGate
  50. 50. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionHTML2PDF4I von Aaron Bartell Artikel in IBM Systems Magazine Open Source auf http://mowyourlawn.com Java Applikation als Aufrufhülse for iText und Flying Saucer Aufruf aus RPG mit RUNJVA und gebasteltem Classpath Auf Holgers PUB1 10 sec. für jeden Aufruf neuer Job und Start einer JVM langsam, skaliert aber linear (JVM beendet sich) Dieter Bender Hinter den Kulissen von ArdGate
  51. 51. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionDas Classpath Problem zum ersten: es werden 3 jar files im Classpath benötigt kontrollierter JVM Start zu Beginn des Jobs => Zahl der JVMs = Zahl der Jobs Start der JVM direkt vor Verwendung => geht schief, wenn bereits aktiv mit falschem Classpath SBMJOB und kontrollierter Start JVM => RUNJVA Variante mit mehr Programmieraufwand! Classpath global setzen => kann zu Konflikten mit anderen Anwendungen führen Java Extension Mechanismus (extdirs) => noch schlechter: höhere Priorität als Classpath Dieter Bender Hinter den Kulissen von ArdGate
  52. 52. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionDas Classpath Problem zum ersten: es werden 3 jar files im Classpath benötigt kontrollierter JVM Start zu Beginn des Jobs => Zahl der JVMs = Zahl der Jobs Start der JVM direkt vor Verwendung => geht schief, wenn bereits aktiv mit falschem Classpath SBMJOB und kontrollierter Start JVM => RUNJVA Variante mit mehr Programmieraufwand! Classpath global setzen => kann zu Konflikten mit anderen Anwendungen führen Java Extension Mechanismus (extdirs) => noch schlechter: höhere Priorität als Classpath Dieter Bender Hinter den Kulissen von ArdGate
  53. 53. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionDas Classpath Problem zum ersten: es werden 3 jar files im Classpath benötigt kontrollierter JVM Start zu Beginn des Jobs => Zahl der JVMs = Zahl der Jobs Start der JVM direkt vor Verwendung => geht schief, wenn bereits aktiv mit falschem Classpath SBMJOB und kontrollierter Start JVM => RUNJVA Variante mit mehr Programmieraufwand! Classpath global setzen => kann zu Konflikten mit anderen Anwendungen führen Java Extension Mechanismus (extdirs) => noch schlechter: höhere Priorität als Classpath Dieter Bender Hinter den Kulissen von ArdGate
  54. 54. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionDas Classpath Problem zum ersten: es werden 3 jar files im Classpath benötigt kontrollierter JVM Start zu Beginn des Jobs => Zahl der JVMs = Zahl der Jobs Start der JVM direkt vor Verwendung => geht schief, wenn bereits aktiv mit falschem Classpath SBMJOB und kontrollierter Start JVM => RUNJVA Variante mit mehr Programmieraufwand! Classpath global setzen => kann zu Konflikten mit anderen Anwendungen führen Java Extension Mechanismus (extdirs) => noch schlechter: höhere Priorität als Classpath Dieter Bender Hinter den Kulissen von ArdGate
  55. 55. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionDas Classpath Problem zum ersten: es werden 3 jar files im Classpath benötigt kontrollierter JVM Start zu Beginn des Jobs => Zahl der JVMs = Zahl der Jobs Start der JVM direkt vor Verwendung => geht schief, wenn bereits aktiv mit falschem Classpath SBMJOB und kontrollierter Start JVM => RUNJVA Variante mit mehr Programmieraufwand! Classpath global setzen => kann zu Konflikten mit anderen Anwendungen führen Java Extension Mechanismus (extdirs) => noch schlechter: höhere Priorität als Classpath Dieter Bender Hinter den Kulissen von ArdGate
  56. 56. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionWarum ich es dann gelassen habe zum zweiten: jedes Java Statement führt zu mehreren Zeilen RPG. 10 Minuten Programmierung Java <=> ein Tag embedded Java in RPG zum dritten: Fehelerbehebung mühsam, Fehleranalyse in Produktion unmöglich! Keine Möglichkeit für Einsatz von log4j wahrscheinlich für mehrere Aufrufe schneller als RUNJVA Skalierbarkeit eher schlechter bis katastrophal (wenn das jeder nutzt) Dieter Bender Hinter den Kulissen von ArdGate
  57. 57. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionWarum ich es dann gelassen habe zum zweiten: jedes Java Statement führt zu mehreren Zeilen RPG. 10 Minuten Programmierung Java <=> ein Tag embedded Java in RPG zum dritten: Fehelerbehebung mühsam, Fehleranalyse in Produktion unmöglich! Keine Möglichkeit für Einsatz von log4j wahrscheinlich für mehrere Aufrufe schneller als RUNJVA Skalierbarkeit eher schlechter bis katastrophal (wenn das jeder nutzt) Dieter Bender Hinter den Kulissen von ArdGate
  58. 58. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionWarum ich es dann gelassen habe zum zweiten: jedes Java Statement führt zu mehreren Zeilen RPG. 10 Minuten Programmierung Java <=> ein Tag embedded Java in RPG zum dritten: Fehelerbehebung mühsam, Fehleranalyse in Produktion unmöglich! Keine Möglichkeit für Einsatz von log4j wahrscheinlich für mehrere Aufrufe schneller als RUNJVA Skalierbarkeit eher schlechter bis katastrophal (wenn das jeder nutzt) Dieter Bender Hinter den Kulissen von ArdGate
  59. 59. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionDie RPG Sicht what we want install AppServer4RPG implement the call Dieter Bender Hinter den Kulissen von ArdGate
  60. 60. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionDie RPG Sicht what we want install AppServer4RPG implement the call Dieter Bender Hinter den Kulissen von ArdGate
  61. 61. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionDie RPG Sicht what we want install AppServer4RPG implement the call Dieter Bender Hinter den Kulissen von ArdGate
  62. 62. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionClosing the Chain to Java now we need an EventHandler to be called configure AppServer4RPG Dieter Bender Hinter den Kulissen von ArdGate
  63. 63. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionClosing the Chain to Java now we need an EventHandler to be called configure AppServer4RPG Dieter Bender Hinter den Kulissen von ArdGate
  64. 64. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionWhat Happens Now Calling the RPG Programm? the RPG part puts its input parameters to the request DS and calls fireEventP the RPG part of JVAGATE creates a response DTAQ sends the data (and an identifier for the caller Job) in packages to the JAVAQ listens on the responseQ for the answer Now the Java part of AppServer4RPG does its work (hopefully it was started) starts a new worker Thread to be ready for the next request creates a Handler for the requested Event, creates Request and Response Objects and calls the performWork of the Handler sends the response Data back in packages to the ResponseQ. known by the identifier passed with the request Dieter Bender Hinter den Kulissen von ArdGate
  65. 65. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionWhat Happens Now Calling the RPG Programm? the RPG part puts its input parameters to the request DS and calls fireEventP the RPG part of JVAGATE creates a response DTAQ sends the data (and an identifier for the caller Job) in packages to the JAVAQ listens on the responseQ for the answer Now the Java part of AppServer4RPG does its work (hopefully it was started) starts a new worker Thread to be ready for the next request creates a Handler for the requested Event, creates Request and Response Objects and calls the performWork of the Handler sends the response Data back in packages to the ResponseQ. known by the identifier passed with the request Dieter Bender Hinter den Kulissen von ArdGate
  66. 66. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionWhat Happens Now Calling the RPG Programm? the RPG part puts its input parameters to the request DS and calls fireEventP the RPG part of JVAGATE creates a response DTAQ sends the data (and an identifier for the caller Job) in packages to the JAVAQ listens on the responseQ for the answer Now the Java part of AppServer4RPG does its work (hopefully it was started) starts a new worker Thread to be ready for the next request creates a Handler for the requested Event, creates Request and Response Objects and calls the performWork of the Handler sends the response Data back in packages to the ResponseQ. known by the identifier passed with the request Dieter Bender Hinter den Kulissen von ArdGate
  67. 67. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe EventHandler gets a Request a simple PORDS2POJO binary is set with Constructor getter for properties the EventHandler Dieter Bender Hinter den Kulissen von ArdGate
  68. 68. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe EventHandler gets a Request a simple PORDS2POJO binary is set with Constructor getter for properties the EventHandler Dieter Bender Hinter den Kulissen von ArdGate
  69. 69. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe EventHandler gets a Request a simple PORDS2POJO binary is set with Constructor getter for properties the EventHandler Dieter Bender Hinter den Kulissen von ArdGate
  70. 70. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe Results Transaction Times of subseconds first call in a Job as fast as following (JVM is prestarted) very scalable (one JVM serves multiple RPG Jobs) no Classpath issues, simply throw the needed jar files to the lib directory of AppServer4RPG multiple instances of AppServer4RPG could run on the same box with diffrent JVM settings AppServer4RPG could be installed on a dedicated server less programming effort than embedded Java in RPG flexible logging with log4j simplifies trouble shooting Dieter Bender Hinter den Kulissen von ArdGate
  71. 71. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe Results Transaction Times of subseconds first call in a Job as fast as following (JVM is prestarted) very scalable (one JVM serves multiple RPG Jobs) no Classpath issues, simply throw the needed jar files to the lib directory of AppServer4RPG multiple instances of AppServer4RPG could run on the same box with diffrent JVM settings AppServer4RPG could be installed on a dedicated server less programming effort than embedded Java in RPG flexible logging with log4j simplifies trouble shooting Dieter Bender Hinter den Kulissen von ArdGate
  72. 72. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe Results Transaction Times of subseconds first call in a Job as fast as following (JVM is prestarted) very scalable (one JVM serves multiple RPG Jobs) no Classpath issues, simply throw the needed jar files to the lib directory of AppServer4RPG multiple instances of AppServer4RPG could run on the same box with diffrent JVM settings AppServer4RPG could be installed on a dedicated server less programming effort than embedded Java in RPG flexible logging with log4j simplifies trouble shooting Dieter Bender Hinter den Kulissen von ArdGate
  73. 73. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe Results Transaction Times of subseconds first call in a Job as fast as following (JVM is prestarted) very scalable (one JVM serves multiple RPG Jobs) no Classpath issues, simply throw the needed jar files to the lib directory of AppServer4RPG multiple instances of AppServer4RPG could run on the same box with diffrent JVM settings AppServer4RPG could be installed on a dedicated server less programming effort than embedded Java in RPG flexible logging with log4j simplifies trouble shooting Dieter Bender Hinter den Kulissen von ArdGate
  74. 74. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe Results Transaction Times of subseconds first call in a Job as fast as following (JVM is prestarted) very scalable (one JVM serves multiple RPG Jobs) no Classpath issues, simply throw the needed jar files to the lib directory of AppServer4RPG multiple instances of AppServer4RPG could run on the same box with diffrent JVM settings AppServer4RPG could be installed on a dedicated server less programming effort than embedded Java in RPG flexible logging with log4j simplifies trouble shooting Dieter Bender Hinter den Kulissen von ArdGate
  75. 75. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionThe Results Transaction Times of subseconds first call in a Job as fast as following (JVM is prestarted) very scalable (one JVM serves multiple RPG Jobs) no Classpath issues, simply throw the needed jar files to the lib directory of AppServer4RPG multiple instances of AppServer4RPG could run on the same box with diffrent JVM settings AppServer4RPG could be installed on a dedicated server less programming effort than embedded Java in RPG flexible logging with log4j simplifies trouble shooting Dieter Bender Hinter den Kulissen von ArdGate
  76. 76. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionSummary Don’t try to write Java code in RPG, provide Java methods with Datastructure parameter interfaces for RPG usage! Let your Java Code run in a prestarted resident JVM, communicating asynchronous with your native programms. Outlook (Nice to have!) Dynamic PORDS2POJO Beans. True Tomcat Version of AppServer4RPG. Dieter Bender Hinter den Kulissen von ArdGate
  77. 77. Einführung Generierung PDF aus HTML Java Komponenten in RPG Die RUNJVA Variante AppServer4RPG embedded Java in RPG Beispiel im Vergleich Die Gleiberg VersionQuestions? Dieter Bender Hinter den Kulissen von ArdGate

×