Die schnellste Möglichkeit, DisplayFile Sourcen ins Web zu bringen
von Phil Coulthard, George Farr und Danny Mace
In der Juniausgabe 2005 der NEWSolutions ist Teil 1 dieses Artikels erschienen. Hier lesen Sie den vollständigen Artikel.Der Autor
Phil Coulthard ist im IBM Labor Toronto als leitender Architekt für Anwendungsentwicklungs-Tools und Sprachen tätig. George Farr ist im IBM Labor Toronto als technischer Entwicklungsmanager für die Sprachen RPG und VisualAge für RPG sowie für die neuen RPG- und Cobol-Tools in WDSc zuständig. Danny Mace ist im IBM Labor Research Triangle Park, North Carolina als Software-Entwicklungsmanager für HATS tätig. Übersetzt und für den deutschsprachigen Markt überarbeitet von Joachim Riener.
Als Gegenstück zum IBM WebFacing Tool, das DisplayFile-DDS-Quellen zur Entwicklungszeit in Webseiten umsetzt und zur Ausführungszeit mit den I/O-Daten der Anwendung zusammenführt, wollen wir in diesem Artikel ein anderes IBM Angebot in diesem Segment vorstellen: HATS (Host Access Transformation Server). HATS verfolgt einen grundlegend anderen Ansatz und basiert auf der Umsetzung des 5250-Datenstroms zur Ausführungszeit. WebFacing ist ein hervorragendes Tool, solange man über DisplayFile-DDS-Quellen verfügt. Liegen diese DDS-Quellen aber nicht vor oder soll eine Web-Darstellung in möglichst kurzer Zeit erreicht werden, bietet sich als Alternative HATS an. Die HATS-Standardtransformation ist eine schlüsselfertige Lösung für die sofortige Abbildung von iSeries Anwendungen im Web. Individuelle Anpassungen sind mit diesem Tool auf einfache Weise und ohne Programmieraufwand durchführbar.
HATS-Funktionsweise
HATS ist ein einfach zu bedienendes Tool, das entwickelt wurde, um die Modernisierung von 5250- oder 3270-Anwendungen auf schnellstem Wege zu ermöglichen. Basierend auf offenen Standards bietet HATS einen HTML-Zugang zu beliebigen iSeries Anwendungen. Durch eine Kombination aus leistungsfähiger unmittelbarer Transformation der Bildschirminhalte von iSeries Anwendungen mit einer reichhaltigen Entwicklungsumgebung erlaubt HATS eine sofortige Bereitstellung von iSeries Anwendungen im Web und – sofern gewünscht – eine anschließende individuelle Anpassung. HATS beinhaltet ein Developer-Studio, das eine Integration mit jeglichen anderen IBM WebSphere Studio-Produkten einschließlich WDSc (WebSphere Developer Studio Client) für iSeries gestattet. HATS-Anwendungen können mit WebSphere Application Server Version 4.0 oder jünger eingesetzt werden.
Für den iSeries Zugriff verwendet HATS die Ausgaben des Telnet 5250-Servers. Da als Grundlage ausschließlich die vom Telnet Server bereitgestellten Daten dienen, ist HATS in der Lage, jeglichen iSeries Bildschirminhalt in HTML umzusetzen. Weder DDS- noch andere Quellen sind erforderlich und in der Anwendung müssen keinerlei Modifikationen vorgenommen werden. HATS-Anwendungen sind nach Entgegennahme des Bildschirminhaltes mit Hilfe ihrer „On the Fly“-Technologie in der Lage, Anwendungs- und Systembildschirme ohne jeglichen Entwicklungsaufwand unmittelbar für das Web zur Verfügung zu stellen. Ist eine individuelle Darstellung der einzelnen Bildschirminhalte gewünscht, lassen sich mit dem HATS-Development-Studio entsprechende Modifikationen in Standard-HTML vornehmen. Die fertige Anwendung kann sich so aus einer Mixtur von automatisch generierten und individuell angepassten Bildschirmen zusammensetzen.Anpassung der Bildschirmdarstellung
HATS enthält ein mit Assistenten ausgestattetes Studio zum Erzeugen individuell angepasster HTML-Versionen der Host-Anwendungen. Die Erstellung eines angepassten Bildschirms beginnt mit dem Aufruf der Anwendungen über den integrierten Basis-5250-Emulator. Soll einer der angezeigten Anwendungsbildschirme angepasst werden, wird durch Anklicken der Option Create Screen Customization im Emulatorfenster der Anpassungsassistent aufgerufen. Der Assistent fragt Kriterien ab, anhand derer HATS erkennen kann, unter welchen Bedingungen der angepasste Bildschirm angezeigt werden soll. HATS kann eine Reihe von Kriterien verwenden, um zu erkennen, ob der generierte Standardbildschirm oder die angepasste Version angezeigt werden soll. Standardmäßig verwendet HATS den Text in den ersten Zeilen des Bildschirms für die eindeutige Identifikation.
Überdies setzt HATS ausgeklügelte Umsetzungstechnologien ein, um Host-basierte Elemente der Benutzerschnittstelle in Standard-HTML-Elemente umzuformen. HTML erlaubt typischerweise die Bereitstellung einer erheblich leistungsfähigeren Benutzerumgebung als ein 5250-Terminal. Daher bietet sich eine Vielfalt von Möglichkeiten, die ursprüngliche Darstellung zu optimieren.
In Abbildung 1 zeigt der Assistent auf der linken Seite ein iSeries Main System Menu und bietet auf der rechten Seite Möglichkeiten an, die gleichen Informationen in HTML darzustellen. Zwischen den angebotenen Möglichkeiten – Drop Down-Listen, Schaltflächen, HTML-Hotlinks, Radio Buttons, usw. kann frei gewählt werden. Der Assistent bietet eine einfache Optionsauswahl und zeigt eine Vorschau mit den gewählten Optionen an. Auch andere interessante Abbildungsmöglichkeiten sind vorhanden, wie beispielsweise die Darstellung von Tabellendaten als Grafiken (Abbildung 2).
HATS erstellt zur Abbildung der vorgenommenen Modifikationen eine Standard-HTML/JSP-Seite. Mit Hilfe des WebSphere Studio Page Designer lässt sich anschließend mittels HTML, JavaScript oder anderen Web-Technologien beliebige weitere Funktionalität hinzufügen.
On the Fly-Transformation Schon alleine die unmittelbare Umsetzung des 5250-Datenstroms ist eine ausgesprochen leistungsfähige Funktion. Ohne jeglichen Entwicklungsaufwand setzt HATS jeden Bildschirm automatisch in HTML um. Damit liefert HATS bereits einen Browser-basierten 5250-Emulator mit Basisfunktionen. Zusätzlich zu den Basisfunktionen nutzt HATS zur Optimierung der Darstellung die Vorteile genereller HTML-Funktionen. So werden beispielsweise Subfiles in HTML-Tabellen, PF-Funktionstasten in HTML-Links, statische Texte in Buttons umgesetzt usw. Abbildung 3 zeigt einen Beispielbildschirm mit einer Subfile.
Eine Anwendung, die nur die Standardtransformation verwendet, lässt sich mit dem Assistenten in drei Schritten erstellen. Man wählt einen Projektnamen, gibt die iSeries TCP/IP-Adresse und die Verbindungsinformationen ein und entscheidet sich für die optische Gestaltung des Bildschirms (Titel und Banner). Das ist schon alles. Danach kann eine J2EE-Anwendungsdatei (EAR) erstellt und auf dem WebSphere Application Server eingesetzt werden. Abbildung 3 zeigt das Ergebnis einer solchen Standardtransformation.
Erweiterte Funktionen
HATS verfügt über eine Reihe erweiterter Funktionen, die ein regelrechtes Fein-Tuning der Anwendung ermöglichen. Zur Steigerung der Endbenutzer-Produktivität lassen sich Makros erstellen, die ein Überspringen nicht benötigter Bildschirme, das Zusammenführen von Daten aus zwei oder mehreren Bildschirmen zu einem einzigen HTML-Bildschirm oder die Automatisierung komplexer Abläufe erlauben. Mit Hilfe von Makros lassen sich auch Daten aus Bildschirminhalten extrahieren und für spätere Verwendung speichern.
Mittels globaler Variablen können Formulare mit voreingestellten Werten versehen, Datenmanipulationen vorgenommen oder Daten gesendet oder empfangen werden. Globale Variablen machen die Daten der iSeries Anwendung für einen Zugriff mit Java, JavaScript oder anderen Web-Sprachen verfügbar. Durch die Bereitstellung einer Brückenfunktion zwischen Web-Anwendungen und 5250-Anwendungen bilden globale Variablen einen Einstiegspunkt für die Erweiterung der standardmäßig integrierten Funktionalität. Der angepasste Code bietet ebenso einen Einstiegspunkt für die Integration von HATS-Anwendungen mit anderen J2EE-Anwendungen, Web Services oder herkömmlichen Anwendungen. Anstatt nur die einfache HTML Version existierender 5250-Anwendungsbildschirme anzuzeigen, erlaubt HATS alternativ die Ausführung zusätzlicher individueller Logik.
Unterstützung für asynchrone Nachrichten
Die HATS-Technologie für die Benutzerschnittstelle basiert auf Standard-J2EE und Web-Benutzerschnittstellen-Modellen. Obwohl diese Modelle umfassende Zugriffsmöglichkeiten und vertraute Schnittstellen beinhalten, bestehen doch einige Einschränkungen bei der Behandlung asynchroner Daten von Host-Anwendungen. Web-Anwendungen basieren auf einem synchronen Kommunikationsmodell zwischen der Anwendung und dem Browser des Endbenutzers. Das bedeutet, dass der Benutzer zuerst einen Request an die Anwendung stellt und anschließend eine Antwort erhält. Ein Mechanismus, der ein Update des Browser-Inhaltes erlaubt, ohne dass zuvor ein erneuter Request des Browsers an die Anwendung gestellt wird, ist in diesem Kommunikationsmodell nicht vorgesehen.
5250-Terminals verfügen aber über die Fähigkeit, ein Update von Bildschirminhalten vorzunehmen, ohne dazu eine erneute Aktivität des Endbenutzers zu erfordern. HATS ist in der Lage, ein solches asynchrones Anwendungsverhalten zu unterstützen. Diese Aufgabe wird von einem optionalen Java Applet wahrgenommen, das einen separaten Kommunikationspfad zwischen Web Browser und WebSphere Server verwaltet. Vorausgesetzt, die Java-Funktionalität in dem verwendeten Browser ist aktiviert, ermöglicht HATS dem Server, Inhalte – sobald sie aktuell anfallen – ohne zusätzliche Benutzeraktivität an den Client zu übertragen. Ist Java im Browser hingegen deaktiviert, muss der Benutzer die Seite neu laden, um Daten zu sehen, die nach seinem letzten Request angefallen sind.
ISeries spezifische Funktionen
Obwohl HATS grundsätzlich sowohl iSeries (5250) als auch zSeries (3270) unterstützt, gibt es einige wenige Funktionen, die nur für iSeries zur Verfügung stehen. Diese speziellen iSeries Funktionen sind nachfolgend aufgeführt:
HATS Limited Edition (HATS LE)
HATS LE ist Bestandteil von iSeries Access for Web und bietet eine schnelle und einfache Methode zur Anwendungsmodernisierung. HATS LE verwendet dieselbe Technologie zur On the Fly-Transformation wie HATS, um einen dynamischen HTML-Zugriff auf alle iSeries Anwendungen bereitzustellen und verfügt über eine einfache HTML-Administrationsschnittstelle zur Konfiguration der Anwendungen. WebSphere Studio ist für den Betrieb von HATS LE nicht erforderlich. Drucken von PDF-Dateien mit iSeries Access for Web HATS erlaubt das Herunterladen von PDF-Versionen der Host-Druckdateien. Bei 3270 Anwendungen setzt HATS die Standard-Host-Druckjobs in PDF um und erlaubt das Anzeigen oder Drucken der Dateien über den Web Browser. Bei 5250-Anwendungen wird diese Unterstützung von iSeries Access for Web bereitgestellt. HATS stellt bei der Erstellung des Projektes eine Integration mit iSeries Access for Web her. Fordert der Endbenutzer einer HATS-Anwendung das Ausdrucken von Dateien an, konvertiert iSeries Access for Web die Host-Druckjobs in das PDF-Format und übernimmt das Herunterladen an den Endbenutzer. Der Endbenutzer muss dann lediglich in der HATS-Anwendung die Option „Druckjobs anzeigen“ wählen, um das iSeries Access for Web-Fenster mit den Druckausgaben anzuzeigen.
Workstation ID
HATS 4.0.2 bietet erweiterte Möglichkeiten bei der Entscheidung, wie der Workstation?ID-Parameter gesetzt werden soll. Es besteht die Möglichkeit zur Übernahme der Workstation?ID
- vom Endbenutzer (über eine Eingabeaufforderung vor der Herstellung der Host-Verbindung)
- aus einer http-Session-Variablen
- aus einem vorgegebenen festen Wert
Diese Auswahlmöglichkeiten geben dem Administrator eine gewisse Flexibilität bei der Erstellung von HATS-Anwendungen, bei denen die Workstation-ID zum Zeitpunkt der Verbindung mit der Anwendung bereits festgelegt sein muss. Unterstützung für DDS-Schlüsselwörter Anwendungsprogrammierern steht eine Auswahl von DDS-Schlüsselwörtern zur Verfügung, welche die Möglichkeiten zur Überprüfung der über einen 5250-Emulator eingegebenen Daten verbessern. Verfügt ein Feld beispielsweise über die Kennzeichnung „auto enter“, überträgt der Emulator die Seite automatisch zur Verarbeitung zurück an den Host, sobald das betreffende Feld vom Benutzer gefüllt ist. Ab HATS-Version 4.0.4 werden diese Attribute erkannt und dem Client Browser verfügbar gemacht, sodass der Endbenutzer das bisher gewohnte Verhalten vorfindet. Die Unterstützung für diese Attribute verringert überdies die Anzahl der Interaktionen mit dem HATS-Server und beschleunigt die Feldprüfung. Folgende 5250- Schlüsselwörter sind unterstützt:
DDS-Schlüsselwörter zur Gültigkeitsprüfung:
- AB (allow blanks –Leerzeichen zulässig)
- ME (mandatory entry – Feldeingabe erforderlich)
- MF (mandatory fill – Feldfüllung erforderlich)
- MOD10 (IBM modulus 10 Prüfziffer)
- MOD11 (IBM modulus 11 Prüfziffer)
- generierte Textboxen mit „mod11“ Attribut
DDS-Schlüsselwörter zur Tastatursteuerung:
- RB (right fill w/blanks – Feld mit Leerzeichen auffüllen)
- RZ (right fill w/zeros – Feld mit Nullen auffüllen)
- ER (auto enter on field completion – automatische Satzfreigabe bei Feldfüllung)
- LC (allow lowercase characters – Groß- und Kleinschreibung zulässig)
- FE (field exit required – Feldfreigabe-Taste erforderlich)
Felder auf einem Host-Bildschirm können überdies auf die Eingabe bestimmter Inhalte beschränkt sein. So sind beispielsweise Benutzername und Passwort auf einem typischen iSeries Sign On-Bildschirm in Großbuchstaben vorgesehen. Anhand solcher zusätzlicher Angaben zur Datenprüfung kann HATS-Textboxen generieren, die basierend auf dem Feldtyp nur die Betätigung bestimmter Tasten erlauben. Ist ein Feld z.B. als „numeric only“ markiert, können in der generierten Textbox auf der Web-Seite nur Ziffern (sowie andere Zeichen, die wie Ziffern behandelt werden) eingegeben werden. Dies verhindert, dass der Bildschirm eventuell blockiert wird oder der Endbenutzer eine Fehlernachricht erhält, die er möglicherweise nie zuvor gesehen hat.
DDS-Schlüsselwörter für die Restriktion von Eingabemöglichkeiten (3270 und 5250):
- X (alphabetic only, lower case are converted to upper case – nur Alpha-Zeichen, kleine Buchstaben werden in Großbuchstaben umgesetzt)
- A (alphanumeric shift, everything permitted – alphanumerische Zeichen, alle Eingaben zulässig) nur 5250
- S (signed numeric, requires field exit – numerisch mit Vorzeichen, Feldeingabetaste erforderlich) nur 5250
- N (numeric shift; 0-9, user must press field+,-,exit – numerisch, 0-9, Benutzer muss Feld+,-, oder Feldeingabetaste betätigen) nur 5250
- Y (numeric only, 0-9, plus, minus, period, comma, space – rein numerisch, 0-9, Plus, Minus, Punkt, Komma, Leertaste)
- D (digits only, 0-9, field minus not allowed – nur Ziffern 0-9, Feld- Taste nicht zulässig) nur 5250
Ab HATS-Version 4.0.4 verfügt die Web-Schnittstelle über die gleichen Möglichkeiten zur Gültigkeitsprüfung, Tastatursteuerung und Eingabebeschränkung wie die Originalanwendung auf 5250-Terminals.
Erforderliche Software
Für den Einsatz von HATS sollte auf dem iSeries System folgende Software installiert sein:
- OS/400 V5R1 oder V5R2 mit dem aktuellen kumulativen PTF-Paket
- WebSphere Application Server
- V4.0.x für iSeries
- V4.0.x Advanced Edition/Advanced Edition Single Server für iSeries
- V 5.0.x für iSeries
- V5.0.x Network Deployment für iSeries
- Express V5.0.x für iSeries
- IBM HTTP Server – Apache (empfohlen)
- HATS Fix Pack 4.0.2 (APAR IC35970) oder höher (empfohlen)
Zusätzliche Informationen
Zusätzliche Informationen über WebSphere HATS sind unter folgenden Adressen verfügbar:
- HATS HATS LE
![Künstler Burgy Zapp [http://burgyzapp.de]](http://newsolutions.de/it/wp-content/uploads//re2_k1_Image-19_Z_Negativ-300x300.jpg)


