Nachdem ich ja in meinen Java auf AS400 FAQs immer heftigst von RPG Java Calls per JNI Support des RPG Compilers abgeraten habe und dort und auch auf Vorträgen und in Artikeln auf die Alternativen mit einem Java Komponenten Server für RPG verwiesen habe, stelle ich immer wieder fest, dass viele RPG Programmierer sich in RPG um ein vielfaches mehr heimisch fühlen als in Java, dass sie eher Programme mit embedded Java in RPG in Kauf nehmen als sich mal ein wenig mehr mit Java Anwendungsdesign zu befassen. Es wird mir wohl nur in Ausnahmefällen gelingen daran grundlegendes zu ändern, aber erleichtern kann man das denen, die das wollen doch.
Ich habe also nunmehr aus meinem Projekt Gleiberg ein Framework gemacht und jetzt auf meine Open Source Seite gestellt. Die Tatsache, dass es dafür eine eigene Seite gibt und diese im Toplevel verlinkt ist, lässt erahnen und hoffen, dass hier noch nähere Erläuterungen und Anleitungen folgen werden. Damit diese Absichten die Veröffentlichung nicht länger hinauszögern und weil das ganze auch auf SourceForge landen soll habe ich es im Augenblick bei einer englischen Anleitung belassen, die als Howto.html im zum Download bereitgestellten Archiv AppServer4RPG.ZIP enthalten ist.
Zur Zeit liegt der Schwerpunkt auf der Entwicklung des Transparenr Gateways, so dass im Augenblick einiges im Fluss ist. Was AppServer4RPG angeht, sind im Zuge dessen einige Bug Fixes erfolgt und als wichtigste Neuerung die Aufteilung der Nachrichten in Pakete, die die Anpassunge der Größe der DataQ überflüssig macht.
Die aktuellen Quellen und die komplette Distribution steht auf Sourceforge bereit.
Die remote Datenbank wird ganz normal im Remote Database Directory der AS/400 eingetragen, zusätzlich muss für jeden Eintrag der JDBC Treiber in einer Property Datei mit zwei Einträgen konfiguriert werden. ArdGate setzt auf der AS/400 SchnittstelleSQL Client Integration Exit Program(auch als *ARDPGM bekannt) auf. Als Schnittstellenprogramm wird ein RPG Programm eingetragen, das mit dem Javateil von ArdGate ber AppServer4RPG per DataQ kommuniziert. Die Anwendung ist bis auf die RPG Schnittstelle komplett in Java geschrieben und kann sowahl auf der lokalen AS/400, als auch auf einer anderen, beliebigen Java Plattform laufen. Der komplette Javateil inklusive AppServer4RPG kann dabei als Batchjob auf einer AS/400, als Anwendung in einem WebServer (Tomcat, WebSphere...), als Dienst auf einer Windows Maschine, oder als Dämon auf einer Linux oder anderen Unix Plattform installiert werden. ArdGate ist Multithreaded und kann gleichzeitig mehrere Clients mit einer JVM, die Speicher resident geladen bleibt, bedienen.
Mit ArdGate ist die erste OpenSource Anwendung basierend auf AppServer4RPG in einem einsetzbaren Betastand verfügbar, weitere sollen folgen.