Untergeordnete Seiten
  • 1 - Einbinden jadice web toolkit
Zum Ende der Metadaten springen
Zum Anfang der Metadaten

In 0 - GWT Projekt einrichten haben wir ein GWT-Projekt vorbereitet, in dem bisher nichts weiter als eine statische Erfolgsmeldung angezeigt wird. In diesem Tutorial nutzen wir die JWT-Bibliotheken, um den Jadice Viewer einzubinden.

Das Ergebnis des Tutorials kann in https://github.com/levigo/jwt-getting-started/tree/master/jwt-tutorial-001 überprüft werden.

Projektstruktur

Folgende Klassen ergänzen wir in diesem Tutorial:

Verzeichnisstruktur

Maven

Die Standard-JWT-Bibliotheken werden über folgende dependencies eingebunden:

pom.xml

Modulkonfiguration (gwt.xml)

Zur Verwendung von JWT muss unsere GWT-Modulkonfiguration ebenfalls ergänzt werden. Wir erweiteren nun zuäsztlich com.levigo.jadice.web.JadiceWebtoolkit.

src/main/java/org/jwt/Application.gwt.xml

UI

Für den Anfang wollen wir in unserem EntryPoint dem GWT-RootPanel ein eigenes Widget hinzufügen, das JadiceWidget.

In unserem Beispiel nutzt das JadiceWidget GWTs DockLayoutPanel, das stark an das Swing BorderLayout erinnert. Dem Panel wird der jadice Viewer hinzugefügt. Der Viewer enthält alle notwendigen Funktionen um Dokumente anzuzeigen und mit ihnen zu interagieren, insbesondere die PageView.

org.jwt.client.ui.JadiceWidget.java

EntryPoint

In unserem EntryPoint initialisieren wir das JadiceWidget und fügen das Element dem RootPanel unter der id "Viewer" hinzu. JWT nutzt zur Client-Server-Kommunikation standardmäßig websockets. Da Jetty websockets aber nicht unterstützt, deaktivieren wir diese in initServerConnection() und nutzen dadurch Server Sent Events (vgl. http://webtoolkit.levigo.de/doc/sect.chapter-reference.general.html#sect.reference.connection-api).

org.jwt.client.ApplicationEntryPoint.java

index.html

Damit das Viewer-div angezeigt wird, müssen wir die index.html noch entsprechend ergänzen:

index.html

Zusammenfassung

Mit diesem Tutorial haben wir den jadice Viewer erfolgreich eingebunden. Da wir bisher kein Dokument laden, wird allerdings nur ein leere graue Fläche angezeigt.