Mai 20

Java HTTP REST Webservice zur PDF Erstellung

Eine Anzeige von Materialbedarf und Verkaufszahlen auf dem IBM iSeries „Greenscreen“ sollte durch eine grafische Aufbereitung anschaulicher werden.

Es soll mittels Funktionstaste möglich sein, die berechneten Kennzahlen als PDF inkl. Produktbildern anzuzeigen.

Im iSeries Umfeld gäbe es dazu natürlich diverse Möglichkeiten z.b. Generierung des PDF’s und anschließendes Versenden an eine E-Mail Adresse, Abspeichern im IFS, …

Es sollte aber etwas interaktiver werden – die Vorstellung des Kunden war das PDF auf Knopfdruck angezeigt zu bekommen.

Daher wurde ein Webservice auf Java Basis realisiert, welches per HTTP REST Schnittstelle angesprochen werden kann. Die Informationen die später das PDF bilden werden von der iSeries AS400 per JSON an den Webservice gesendet. Der Webservice bereitet diese Daten dann auf, fügt grafische Elemente hinzu, etc.

Das fertige Ergebnis wird als PDF Datei bereitgestellt und der Benutzer bekommt diese dann in einem Browser Fenster angezeigt:

Für technisch Interessierte: Der POST Request mit der JSON Payload wird vom Java Webservice mit einem HTTP Status Code 303 „see other“ inkl. Location Header beantwortet wo das fertig gerenderte PDF abgerufen werden kann.

An diesem Anwendungsbeispiel sieht man wieder wie universell Webservices angewendet werden können.

Wie bei Webservices üblich wäre es natürlich genauso möglich den Aufruf von einem beliebigen anderen System zu tätigen.