[NEWSboard IBMi Forum]
  1. #1
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012

    CGIDEV2 und HTTP-Server (Apache)

    Hallo,

    bei ersten Tests mit o.g. Produkten ist mir aufgefallen, dass beim Apache HTTP-Server eine feste EBCDIC-Codepage beim Parameter DefaultFsCCSID angegeben werden muß. Wenn der Parameter nicht angegeben wird, wird die Standardeinstellung des Systems genommen. Wie immer haben wir natürlich das Problem, dass wir das Ganze "multi-language-fähig" brauchen (mehrere Sprachräume gleichzeitig). Offenbar scheint das aber nicht zu gehen, wenn ich die Doku richtig verstanden habe. Es geht wohl immer nur eine Sprache und man kann die auch nicht dynamisch ändern. Somit können wir das so nicht gebrauchen. Ich habe nun auch schon versucht die Texte bereits im RPG-Programm in UTF-8 zu konvertieren und dann an den Webserver zu schicken. Das funktioniert so aber nicht, da wohl als Basis immer ein Feld im EBCDIC erwartet wird und nicht in UTF-8.

    Gibt es nun irgendeine Möglichkeit wie wir unser Problem lösen können ? Geht das mit CGIDEV2 überhaupt ?

    Wenn nicht, was gibt es sonst noch für einfache, schnell erlernbare Tools/Frameworks, um browserbasierte Lösungen zu erstellen, die auf die DB2 zugreifen können (JSP o.ä.) ?

    Gruß,
    KM

  2. #2
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    Hallo,

    naja, einfach und schnell erlernbar ist relativ - das hängt von den Vorkenntnissen, den Ansprüchen/Anforderungen und dem Maßstab des Beurteilenden ab.
    Weit verbreitet ist hier Java/JSP und Java Server Faces/Struts, aber da ist schon ein nicht zu vernachlässigender Lernaufwand, wenn das nacher auch Hand und Fuß haben soll.
    Obwohl ich das nicht mit RPG machen würde, kann ich mir kaum vorstellen, dass so eine schnöde EBCDIC Klamotte das zum platzen bringen soll...

    mfg

    Dieter Bender

    Zitat Zitat von KM Beitrag anzeigen
    Hallo,

    bei ersten Tests mit o.g. Produkten ist mir aufgefallen, dass beim Apache HTTP-Server eine feste EBCDIC-Codepage beim Parameter DefaultFsCCSID angegeben werden muß. Wenn der Parameter nicht angegeben wird, wird die Standardeinstellung des Systems genommen. Wie immer haben wir natürlich das Problem, dass wir das Ganze "multi-language-fähig" brauchen (mehrere Sprachräume gleichzeitig). Offenbar scheint das aber nicht zu gehen, wenn ich die Doku richtig verstanden habe. Es geht wohl immer nur eine Sprache und man kann die auch nicht dynamisch ändern. Somit können wir das so nicht gebrauchen. Ich habe nun auch schon versucht die Texte bereits im RPG-Programm in UTF-8 zu konvertieren und dann an den Webserver zu schicken. Das funktioniert so aber nicht, da wohl als Basis immer ein Feld im EBCDIC erwartet wird und nicht in UTF-8.

    Gibt es nun irgendeine Möglichkeit wie wir unser Problem lösen können ? Geht das mit CGIDEV2 überhaupt ?

    Wenn nicht, was gibt es sonst noch für einfache, schnell erlernbare Tools/Frameworks, um browserbasierte Lösungen zu erstellen, die auf die DB2 zugreifen können (JSP o.ä.) ?

    Gruß,
    KM
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    Obwohl ich das nicht mit RPG machen würde, kann ich mir kaum vorstellen, dass so eine schnöde EBCDIC Klamotte das zum platzen bringen soll...
    Das scheint aber doch so zu sein. Es gibt sogar Leute, die für jede EBCDIC-CCSID eine eigene HTTP-Server-Instanz laufen lassen. Das kann's ja nun auch nicht sein.

    Weit verbreitet ist hier Java/JSP und Java Server Faces/Struts
    Kannst Du mir da ein paar Tips geben wie und in welcher Reihenfolge man das sinnvollerweise angeht ? Gibt es gute Tutorials in dieser Richtung ? Vielleicht lohnt sich ja der Aufwand trotzdem.

    Danke,
    KM

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    Hallo,

    was in jedem Fall geht, ist: alle Zeichen außerhalb des konsistent übertragbaren Teils als HTML Entities darzustellen. Programm technisch kann man das durch Filter abbilden, die man sich im Falle RPG vermutlich selber schreiben muss. Was die Darstellung im Browser angeht, ist das vermutlich sogar eine der besseren Lösungen.

    Zum JSP und Co. Teil der Frage: Die Tutorials auf der Sun Seite sind im allegemeinen eigentlich ganz gut, da gibt es auch was über Web Anwendungen. Für Struts und Java Server Faces, das ist für einen Einsteiger recht happig und am Anfang schwierig die Kernkonzepte wirklich zu verstehen. Da besteht die Gefahr an der Oberfläche drüber weg zu rutschen.

    Das mit dem selber lernen geht eigentlich einigermaßen, wenn man dann in ein Projekt einsteigt in dem auch Erfahrenen tätig sind, ansonsten kann das Lehrgeld bitter werden.

    Vielleicht sollte man auch mal folgendes lesen:
    http://www.purl.org/stefan_ram/html/21-tage

    mfg

    Dieter Bender
    Zitat Zitat von KM Beitrag anzeigen
    Das scheint aber doch so zu sein. Es gibt sogar Leute, die für jede EBCDIC-CCSID eine eigene HTTP-Server-Instanz laufen lassen. Das kann's ja nun auch nicht sein.



    Kannst Du mir da ein paar Tips geben wie und in welcher Reihenfolge man das sinnvollerweise angeht ? Gibt es gute Tutorials in dieser Richtung ? Vielleicht lohnt sich ja der Aufwand trotzdem.

    Danke,
    KM
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    Registriert seit
    Jul 2005
    Beiträge
    1.053
    Zitat Zitat von KM Beitrag anzeigen
    Hallo,

    bei ersten Tests mit o.g. Produkten ist mir aufgefallen, dass beim Apache HTTP-Server eine feste EBCDIC-Codepage beim Parameter DefaultFsCCSID angegeben werden muß. Wenn der Parameter nicht angegeben wird, wird die Standardeinstellung des Systems genommen. Wie immer haben wir natürlich das Problem, dass wir das Ganze "multi-language-fähig" brauchen (mehrere Sprachräume gleichzeitig). Offenbar scheint das aber nicht zu gehen, wenn ich die Doku richtig verstanden habe.

    Es geht wohl immer nur eine Sprache und man kann die auch nicht dynamisch ändern. Somit können wir das so nicht gebrauchen. Ich habe nun auch schon versucht die Texte bereits im RPG-Programm in UTF-8 zu konvertieren und dann an den Webserver zu schicken. Das funktioniert so aber nicht, da wohl als Basis immer ein Feld im EBCDIC erwartet wird und nicht in UTF-8.
    Gibt es nun irgendeine Möglichkeit wie wir unser Problem lösen können ? Geht das mit CGIDEV2 überhaupt ?
    Wie erkennt den eure maschiene aus welchen land der Benutzer stammt der sich gerade einlogt

    Da wäre doch der Ansatzpunkt

    Eine kleines RPG das beim anmelden zb. anhand einer Liste registrierter Benutzer prüft mit welcher Nationalität sich der Benutzer Registriert hat.

    Anschließend wird dan als pararmeter der länderspezifische EBCDIC Code übertragen.

    Die AS/400 bzw. I5 ist doch in der Lage für Multilanguagefunktionalität mehrere Ländercodes zu verwalten und zu handhaben.

    Zumindest Landessprache + Englisch

    Gruß AS400.lehrling

  6. #6
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    was in jedem Fall geht, ist: alle Zeichen außerhalb des konsistent übertragbaren Teils als HTML Entities darzustellen
    Daran hatte ich auch schon gedacht. Ich müsste halt sämtlich Sonderzeichen pro Sprache dann in die entsprechenden HTML-Entities umsetzen und wieder retour. Da müsste ich nur schauen, dass ich auch wirklich alle erwische. Das wäre wohl wirklich die einzige Möglichkeit, wenn ich mit CGIDEV2 weitermachen wollte. Ich hab jetzt noch gar nicht getestet was passiert, wenn ich z.B. in einem Eingabefeld Sonderzeichen eingebe, wie diese dann im RPG-Programm ankommen.

    Die andere Sache mit JSP/JSF, etc. scheint mir doch recht komplex zu sein. Außerdem habe ich wohl auch nicht die Zeit mich da richtig reinzuarbeiten. Und Erfahrung in diesem Bereich ist in unserer Firma nicht viel vorhanden. Tja, eigentlich gar keine.

    @AS400.Lehrling

    Die AS/400 bzw. I5 ist doch in der Lage für Multilanguagefunktionalität mehrere Ländercodes zu verwalten und zu handhaben.
    Ich weiß jetzt nicht so recht was Du damit meinst. Aber ich glaube nicht, dass mir das weiterhilft.

    Gruß,
    KM

  7. #7
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    Hallo,

    wieso retour? Die Eingaben kommen je nach Spracheinstellung des Browsers, an diese Einstellung kommt man in Java dran (vermutlich in CGI auch) in der Datenbank verfährt man wie bisher (Länder spezifische Dateien, oder Feld CCSID und Cast per SQL.
    Mit dem CGI da würde ich davor warnen das zu unterschätzen; da sieht man schnell was auf der Seite, aber wenn die Probleme kommen, dann zahlt man drauf, weil man wesentlich mehr händisch frickeln muss und keine Open Source Komponenten da sind. Was wollt ihr denn da eigentlich wirklich machen? Dann kann man den Initial Aufwand von Java besser abschätzen, jedenfalls ginge da der Aufwand nicht in eine Sackgasse wie CGI (ich weiß, dass da wieder welche jaulen).

    mfg

    Dieter Bender

    Zitat Zitat von KM Beitrag anzeigen
    Daran hatte ich auch schon gedacht. Ich müsste halt sämtlich Sonderzeichen pro Sprache dann in die entsprechenden HTML-Entities umsetzen und wieder retour. Da müsste ich nur schauen, dass ich auch wirklich alle erwische. Das wäre wohl wirklich die einzige Möglichkeit, wenn ich mit CGIDEV2 weitermachen wollte. Ich hab jetzt noch gar nicht getestet was passiert, wenn ich z.B. in einem Eingabefeld Sonderzeichen eingebe, wie diese dann im RPG-Programm ankommen.

    Die andere Sache mit JSP/JSF, etc. scheint mir doch recht komplex zu sein. Außerdem habe ich wohl auch nicht die Zeit mich da richtig reinzuarbeiten. Und Erfahrung in diesem Bereich ist in unserer Firma nicht viel vorhanden. Tja, eigentlich gar keine.

    @AS400.Lehrling



    Ich weiß jetzt nicht so recht was Du damit meinst. Aber ich glaube nicht, dass mir das weiterhilft.

    Gruß,
    KM
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  8. #8
    KM is offline [professional_User]
    Registriert seit
    Apr 2003
    Beiträge
    1.012
    Was wollt ihr denn da eigentlich wirklich machen? Dann kann man den Initial Aufwand von Java besser abschätzen
    Wir sind (wie wahrscheinlich viele andere auch) auf der Suche nach einer geeigneten Möglichkeit unsere ersten Programme auf grafische Oberfläche umzustellen. Da unsere Greenscreen-Masken zum Teil proppenvoll und unübersichtlich sind, wollen wir beginnen diese so nach und nach umzustellen. Außerdem möchten wir nun auch teilweise Bilder mit einfügen (z.B. Artikelstammverwaltung). Wir möchten dafür eine browserbasierte Lösung einsetzen, um nicht auf jedem Rechner irgendwas installieren zu müssen, sondern einfach per Browser darauf zugreifen zu können. Dadurch, dass es so viele Möglichkeiten gibt, dauert die Suche mittlerweile auch schon Jahre. Man probiert immer irgendein Tool aus und stellt dann fest, dass es so doch nicht funktioniert. Und dann probiert man das nächste. Da CGIDEV2 doch recht weit verbreitet ist und relativ leicht erlernbar ist, wollten wir eigentlich in diese Richtung gehen. Wenn es da aber die genannten CCSID-Probleme gibt und man die Zeichen immer konvertieren müsste, ist halt die Frage ob das noch sinnvoll ist oder ob es bessere Möglichkeiten gibt. Das Problem ist, dass man sich nicht in jedes Tool erst mal reinarbeiten kann, um es zu bewerten, weil das viel zu viel Zeit in Anspruch nimmt. Deshalb versuche ich in Erfahrung zu bringen, welche Strategie man heute gehen sollte, um auch in Zukunft noch aktuell zu bleiben. Bei solchen Sachen wie z.B. VARPG oder Net.Data weiß man ja nicht wie lange es die noch gibt. Ich bin schon öfters über Begriffe wie JSP, JSF, MyFaces, Struts, AJAX, Turbine, Tapestry, WebWork, Spring, etc. gestolpert. Allerdings kenne ich diese nicht und weiß deshalb nicht wie gut, einfach, schnell erlernbar, überdimensioniert, etc. diese Tools/Frameworks sind. Gibt es evtl. irgendwo Vergleichsmöglichkeiten, Bewertungen, Meinungen hierzu ?

    Gruß,
    KM

  9. #9
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    Hallo,

    wenn man eine ganze Anwendung, die bereits Jahrzehnte existiert, "irgendwie" neu machen will, dann soll das dann wohl ebenfalls Jahrzehnte laufen können - eigentlich will man zu neuen Ufern aufbrechen.
    Damit bleiben nur zwei ernsthafte Kandidaten: dot.net oder Java basierte Technologien, je nach Geschmack und Umfeld sucht man sich da einen aus und hat damit den Horizont in etwa festgelegt. Jetzt wird es relativ einfach Dinge einzuordnen, ob sie in dieser Richtung liegen, oder nicht.
    Zu dot.net kann ich nix sagen, allenfalls zu WebServices (die im Frontend erstmal keine Rolle spielen), ich habe meinen Horizont auf Java eingenordet (warum auch immer).
    CGI, NetDate, VisualRPG ist mit keinem der Horizonte wirklich verträglich, da steckt man Aufwand in falsche Richtung, im Falle von CGI und RPG läd man sich zusätzlich Probleme auf (ich sage nur Verwaltung von Sitzungsdaten).
    Pragmatisch gesehen würde ich da mit JSP beginnen, ein kleines Pilotprojekt machen (3 bis 4 Bildschirme), wenn man sich das ohne fach kundige Hilfe zutraut (oder zutrauen muss), dann sollte man spätestens nach diesem Pilotprojekt mal eine Projekt Review mit jemand Erfahrenem machen, damit man sicher weiß, wo man steht.
    Landen wird man auf diesem Weg sicherlich mal bei Struts oder Java Server Faces, aber alle Schritte, die man bis dahin gemacht hat, gingen auch in diese Richtung und sind verträglich mit dem Horizont.
    Für die benötigten Einstiegskenntnisse (ein wenig HTML und Javakenntnisse und erste Erfahrungen vorausgesetzt), brauchts mit Hilfe so circa drei Tage, zum selber lernen vielleicht 2 Wochen, bei letzterem ist dann das zu zahlende Lehrgeld für den Piloten größer.

    mfg

    Dieter Bender


    Zitat Zitat von KM Beitrag anzeigen
    Wir sind (wie wahrscheinlich viele andere auch) auf der Suche nach einer geeigneten Möglichkeit unsere ersten Programme auf grafische Oberfläche umzustellen. Da unsere Greenscreen-Masken zum Teil proppenvoll und unübersichtlich sind, wollen wir beginnen diese so nach und nach umzustellen. Außerdem möchten wir nun auch teilweise Bilder mit einfügen (z.B. Artikelstammverwaltung). Wir möchten dafür eine browserbasierte Lösung einsetzen, um nicht auf jedem Rechner irgendwas installieren zu müssen, sondern einfach per Browser darauf zugreifen zu können. Dadurch, dass es so viele Möglichkeiten gibt, dauert die Suche mittlerweile auch schon Jahre. Man probiert immer irgendein Tool aus und stellt dann fest, dass es so doch nicht funktioniert. Und dann probiert man das nächste. Da CGIDEV2 doch recht weit verbreitet ist und relativ leicht erlernbar ist, wollten wir eigentlich in diese Richtung gehen. Wenn es da aber die genannten CCSID-Probleme gibt und man die Zeichen immer konvertieren müsste, ist halt die Frage ob das noch sinnvoll ist oder ob es bessere Möglichkeiten gibt. Das Problem ist, dass man sich nicht in jedes Tool erst mal reinarbeiten kann, um es zu bewerten, weil das viel zu viel Zeit in Anspruch nimmt. Deshalb versuche ich in Erfahrung zu bringen, welche Strategie man heute gehen sollte, um auch in Zukunft noch aktuell zu bleiben. Bei solchen Sachen wie z.B. VARPG oder Net.Data weiß man ja nicht wie lange es die noch gibt. Ich bin schon öfters über Begriffe wie JSP, JSF, MyFaces, Struts, AJAX, Turbine, Tapestry, WebWork, Spring, etc. gestolpert. Allerdings kenne ich diese nicht und weiß deshalb nicht wie gut, einfach, schnell erlernbar, überdimensioniert, etc. diese Tools/Frameworks sind. Gibt es evtl. irgendwo Vergleichsmöglichkeiten, Bewertungen, Meinungen hierzu ?

    Gruß,
    KM
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  10. #10
    Registriert seit
    Jul 2005
    Beiträge
    1.053
    Zitat Zitat von KM Beitrag anzeigen

    @AS400.Lehrling



    Ich weiß jetzt nicht so recht was Du damit meinst. Aber ich glaube nicht, dass mir das weiterhilft.

    Gruß,
    KM
    Ich meine das es eventuell möglich ist über eine Benutzeranmeldung auf der AS/400 die Länderspezifische Sprache zu ändern, diese änderung würde dan ja auch automatisch als Standart über CCISD an dein Anwendungsprogramm übergeben wird.

    Bei anlegen einer endsprechenden Libraty müßte es doch auch möglich sein nur die Endsprechende CCSID Länderspezifisch zu ändern.

    AS400.lehrling

  11. #11
    Registriert seit
    Oct 2004
    Beiträge
    251
    Zitat Zitat von KM Beitrag anzeigen
    Dadurch, dass es so viele Möglichkeiten gibt, dauert die Suche mittlerweile auch schon Jahre....
    Gibt es evtl. irgendwo Vergleichsmöglichkeiten, Bewertungen, Meinungen hierzu ?
    Ja, man mit wird vom Angebot fast erschlagen. Vergleiche sind dann immer nur von einer Teilmenge und kommen nicht immer zum selben Ergebnis.
    Da sehe ich einen leichten Vorteil für Dot Net -> weniger Vielfalt = weniger Tool/Frameworksuche

    Zur Java-Interneteinführung:
    Galileo Computing :: Java ist auch eine Insel – 17 JavaServer Pages und Servlets

    Was denn Start angeht, schließe ich mich Dieter an: JSP ist noch eines der einfacheren Dinge und das Wissen darüber wiederverwendbar. Davor würde ich noch ein paar "Hello World"-Servlets mit Url-Parametern machen, damit man checkt wie der Server funktioniert.

    Danach wird es komplizierter. Wenn man der IBM folgt, landet man bei J2EE, JSF und/oder Struts.... - XML-Orgien inklusive. Erste Ergebnisse nach einem 1/2 Jahr - wenn man schon Java kann(*).

    Die Wahl des Frameworks hängt natürlich auch stark von den Anforderungen - von daher kann es schon gar keine eindeutigen Empfehlungen geben.

    Ich habe Out-of-the-Box-Projekte (box=AS/400) dazu verwendet, um etwas Erfahrung damit zu sammeln.
    Wobei ich mittlerweile schon weniger Suche, sondern hauptsächlich das OpenSource-Ajax-Framework ZK (ZK - #1 Ajax project in SourceForge.net) teste.

    Kurz angerissen:
    + Stellt nur die Präsentationsschicht -> recht schlank, engt nicht ein
    + kein App-Server notwendig (Tomcat reicht)
    + Arbeitet mit Komponenten - starke Ähnlichkeit mit Desktop-Programmierung
    + Untersützt MVC
    + mMn einfacher wie Swing-Programmierung
    + tastaturbedienbare Applikationen möglich

    - erlernen des Komponentensyntax (html/xml) notwendig, GUI-Editor kommt erst
    - höherer Resourcenverbrauch wie JSP/Servlet (relevant wenn's auf der i5 laufen soll, x86 kratzt das eher nicht..)
    - Doku eher dünn, nur englisch
    - erfordert Javascript im Browser

    BTW: Zum Thema Bilder hochladen, hier ein Beispiel mit ZK: IBM developerWorks : Blogs : Informix Application Development

    (*) Einschätzung von einem IBM-Schulungsleiter

Similar Threads

  1. HTTP server *Admin won't start
    By troepen in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 10-05-06, 21:59
  2. Http Admin Server Startet nicht mehr
    By Techniker in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 26-04-06, 15:20
  3. IBM original HTTP Server als PROXY unter V5R2
    By BeckerOl in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 28-04-05, 07:19
  4. HTTP Server nach Releasewechsel
    By DEVJO in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 22-03-05, 09:47
  5. IBM HTTP SERVER
    By Joe in forum IBM i Hauptforum
    Antworten: 0
    Letzter Beitrag: 08-08-02, 22:22

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •