15 Jahre Erfahrung FreeCall 0800 tutegos

Google Web Toolkit (GWT)

Mit dem ›Google Web Toolkit‹ (GWT) kam 2006 ein entwicklerfreundliches und freies Framework zur Programmierung von Web 2.0 Ajax-Applikationen auf den Markt. Eine Besonderheit ist der Java-zu-JavaScript-Compiler, der Java-Entwicklern das Arbeiten in ihrer gewohnten Entwicklungsumgebung ermöglicht. Der GWT-Compiler übersetzt den Java-Code in eine HTML-Seite mit CSS und JavaScript-Funktionen. Die Seminarteilnehmer lernen praxisnah, Web 2.0 Ajax-Applikationen mit dem Google Web Toolkit zu erstellen, welche Entwicklungs-Tools geboten und wie effektive mehrschichtige GWT-Anwendungen entworfen werden. Das Seminar führt ebenfalls den Debug-Prozess und zusätzliche freie und kommerzielle Komponenten vor.

Inhalte des Seminars

[LOGO]

Einführung in das Google Web Toolkit

  • Ajax und Web 2.0-Anwendungen, ›Rich Internet Anwendungen‹ (RIA)
  • Dashboard Demo-Applikation
  • Download und Installation von GWT, GWT-Lizenz
  • Browser-Unterstütztung
  • Entwicklungsumgebung, GWT-Projekte mit Eclipse, NetBeans IDE, IntelliJ IDEA
  • GWT Designer, Gui-Builder als WYSIWYG-Tool
  • Projektstruktur einer GWT-Anwendung
  • Client- und Servercode Unterscheidung
  • Erste kleine Anwendung, Entwicklungszyklus
  • RootPanel, EntryPoint, onModuleLoad
  • GWT-Compiler: Wie GWT Java in JavaScript compiliert
  • Hosted-Modus (GWT-Emulator) und Web-Modus
  • GWT 2.0: OOPHM (Out Of Process Hosted Mode)
  • JRE-Emulation und GWT-Bibliothek
  • GWT im Vergleich zu Swing, JSF, Ruby on Rails, Echo2

GWT-Widgets und Ereignisse

  • Standard-Widgets des GWT: Label, Button, TextBox, HyperLink, Tree, ...
  • Bestehende HTML-Elemente wie <input type="text" /> in GWT-Widgets umwandeln
  • Ereignisbehandlung: Listener und Handler
  • onBrowserEvent, Browser-Standardereignisse, KeyboardListenerAdapter
  • Bilder: Image-Widget, Prefetching
  • RichTextArea und ImageBundle, Client-Bundle aus GWT 2.0
  • DatePicker, DateBox
  • Themes standard, chrome and dark
  • GWT Quirks- und Standard-Modus
  • VerticalPanel, HorizontalPanel, FlowPanel, AbsolutPanel
  • ScrollPanel, DockPanel, CellPanel, TabPanel, LazyPanel
  • Tabellen, Grid, FlexTable
  • Drag-and-Drop
  • Zusammengesetze und neue Widgets erstellen, Composite-Klasse
  • Widgets im DOM-Baum erstellen und modifizieren
  • Styling von Widgets über CSS, DIV-IDs, Einbinden der CSS-Dateien
  • UIBinder aus GWT 2.0, Data-Binding
  • MVP-Architektur

Remote Procedure Call (RPC) mit GWT

  • GWT in der Mehrschichten-Architektur
  • RPC-Konzepte zur (a)synchronen Kommunikation
  • Schnittstellen und Klassen des GWT-RPC
  • RemoteService, onSuccess, onFailure, AsyncCallback
  • Schnittstelle deklarieren und Service implementieren
  • Fassaden zur Vereinfachung des GWT-RPC-Aufrufs
  • GWT-serialisierbare Objekte, Collections
  • IsSerializable, Serializable, eigene Serialisierer
  • RPC-Servlet konfigurieren
  • Alternativen zu GWT-RPC: JSON RPC für GWT

Ajax, HTML-Formulare und JSON

  • Abfragen und HTTP-Aufrufe mit dem RequestBuilder
  • HTTP-Methoden
  • XML-Dateien laden
  • FormPanel, PayPal-Anbindung als Beispiel
  • Formularelemente
  • JSON-Dateiformat, JSON Mashups, Daten von fremden Webseiten laden
  • JSONParser, JSONValue, JSONObject, Arrays

Java Script Native Interface (JSNI) in GWT

  • JavaScript und GWT Kommminikation
  • JSNI-Syntax, /*-{/ }-*/
  • Aus JavaScript Java-Eigenschaften nutzen
  • GWT JavaScriptObject (JSO)
  • Ausnahmen, JavaScriptException
  • JavaScript-Bibliotheken einbinden und kapseln
  • JavaScript HTML-Editor FCKeditor als Beispiel einbetten
  • Dojo-Integration in GWT

Anwendungen modularisieren

  • Modulkonzept von GWT
  • Modul-XML, Aufbau der Standard-Projektstruktur
  • Module laden, neue Module einbinden, Module umbenennen
  • Pfade definieren
  • Eigene Module bauen
  • Java-Paket-Struktur
  • Code Splitting (runAsynch) in GWT 2.0

Ergänzende GWT-Widgets und Widget-Sammlungen

  • GWT-Ext (LGPL v3) und Ext GWT (kommerziell und GPL v3)
  • Autovervollständigung, editierbare Tabellen und Bäume, Menüs, Grids, Dialoge
  • GWT-Ext 2.0 Charts
  • Google Maps GWT API
  • SmartGWT (GWT APIs for SmartClient)
  • GWT Widget Library
  • GWT Component Library

Weitere GWT-Eigenschaften

  • Browserverlauf, Umgang mit Browser-Zurück, lesezeichenfreundliche Seiten
  • URL-Parameter: page.html&company=tutego
  • Sitzugsverwaltung, Cookies
  • Schutz vor Cross-Site Scripting (XSS), XSRF-Schutz
  • GWT und Java-Applets und Flash, Kommunikation zwischen GWT und Java Applets
  • Browserunterschiede berücksichtigen
  • Caching/Versionierung
  • Deferred Binding
  • Statische und dynamische Internationalisierung/Lokalisierung von GWT-Anwendungen
  • Benutzerdefinierte Eigenschaften
  • Deployment und Build-Management mit Ant und Maven
  • Testen und debuggen von GWT-Anwendungen, JUnit, GWT-Logging und log4j
  • Deployment auf Webserver und Dateisystem, WAR-Archive bauen
  • Datei-Upload zum Server
  • GWT-Generatoren, automatische Codegenerierung für Dashboard
  • Speed Tracer
  • Browserunterschiede berücksichtigen
  • Lademechanismus von GWT, Bootstrapping
  • Performance-Optimierung: Caching, Image-Bundles, Lazy-loading, Prefetching
  • GWT-Applikationen suchmaschinenoptimiert gestalten, GWT-SEO
  • GWT und Google Gears
  • GWT und Spring im Backend, GWT-Spring-Integration
  • GWT und Hibernate, DTO-Layer entwerfen
  • Ausblick auf GWT 2.5: Super Dev Mode, Elemental, Fragment Merging, UIBinder-Änderungen

Termine / Kontakt

Wir helfen Ihnen gerne einen passenden Termin zu finden. Kontaktieren Sie uns per E-Mail oder unter 0800/tutegos (kostenlos aus allen Netzen).

Die Fakten

  • Empfohlene Schulungsdauer: 4 Tage, insgesamt 32 Unterrichtsstunden à 45 Minuten
  • Voraussetzungen: Der Kurs ›Java für Fortgeschrittene‹ oder ›Java für Umsteiger‹.
  • Zielgruppe: Software-Entwickler
  • Seminar-Software: Als Laufzeitumgebung wird standardmäßig Java SE 6 von Sun eingesetzt. Die Entwicklungsumgebung bildet Eclipse, das ›Google Plugin for Eclipse‹ und GWT 2.6.

Verweise

Alle Kategorien

Was Teilnehmer sagen

›Das tutego-Seminar war genau auf unsere Wünsche abgestimmt. Somit konnten wir 100% davon in unser Tagesgeschäft übernehmen.‹
Jens-Peter B., Rossmann

›Bester Kurs, den ich je besucht habe.‹
Kent G., Deutsche Bank

›Schöne Schulung. Endlich das ein oder andere AHA-Erlebnis.‹
Teilnehmer, innovas

›Die lockere, aber stets themenbezogene Art des Trainers, die es ihm ermöglicht, auch schwierige Sachverhalte deutlich zu machen [hat mir besonders gut gefallen].‹
Jörg H., Bundeswehr

›[Der tutego-Trainer] hat es mühelos geschafft, auch komplizierte Sachverhalte leicht verständlich darzustellen. Seine Begeisterung für das Thema hat sich nachhaltig auf die Teilnehmer übertragen - ich kann den Trainer nur weiterempfehlen.‹
Mathias W., Deutsche Afrika-Linien

›Referent war sehr kompetent. Referent ging stets auf Fragen ein.‹
Reinholt P., debis Systemhaus

›Guter Dozent, der weiß wovon er redet.‹
Jochen H., Dresdner Bank

›Die tutego-Trainer waren äußerst kompetent, konnten ihr Wissen sehr gut vermitteln und sind stets auf alle Fragen und Problemstellungen eingegangen.‹
Teilnemer, Nö. Gebietskrankenkasse

›Die Vortragsart des Referenten und dessen fachliche Sicherheit [hat mit sehr gefallen]. Gute Übungen, Konzentration auf das Wesentliche.‹
Gil R., MDR

›Durch seine moderne und kompetente Art schafft es C. Ullenboom mit seinem fundierten Hintergrundwissen den Seminarteilnehmern jedes Thema aus dem Bereich Java verständlich zu machen und das Interesse für neue Technologien zu wecken.‹
René D., Servicezentrum Landentwicklung und Agrarförderung

›Vielen Dank noch einmal für das interessante und umfangreiche Seminar. Mir persönlich hat es viel gebracht!.‹
Thomas S., Sächsische Aufbaubank/Förderbank

›[Der tutego-Trainer] hat uns das komplexe Thema Objective-C sehr kompetent vermittelt. Beide Trainings waren individuell auf uns abgestimmt.‹
Andre M., Gathmann Michaelis und Freunde

›Die Schulung ist sehr gut bei den Teilnehmern angekommen. Ich habe bisher nur positives Feedback erhalten.‹
Torsten L., Netbiscuits

›Wir waren mit dem Kurs sehr zufrieden. Auch die Unterlagen sind sehr gut aufbereitet.‹
Igor R., typo3expert.at

›Die Abstimmung im Vorfeld über die Inhalte ist gut gelaufen, es war eine sehr individuelle Betreuung, wie man das von einem Inhouse Seminar in dieser Form erwartet hat.‹
Dr. Andreas V., edacentrum

›Die Kursteilnehmer waren mit dem Kurs sehr zufrieden. In den vier abgehaltenen Seminarblöcken wurden die Kursanforderungen vollständig abgedeckt, die Kursinhalte konnten individuell abgesprochen werden.‹
Teilnemer, Nö. Gebietskrankenkasse

›Die Schulung bot einen kompakten und zielgerichteten Wissenstransfer auf hohem Niveau. Im Ergebnis für alle Teilnehmer eine echte Bereicherung.‹
Johannes W., Schönhofer Sales and Engineering

›Das Training war logisch strukturiert, inhaltlich auf unseren fachlichen Anspruch abgestimmt und hat zudem noch Spaß gemacht. Vielen Dank für diese tolle Schulung.‹
Christoph G., my.IRS

›Wir waren sehr zufrieden. Die Teilnehmer haben das mitgenommen, was sie brauchten und erwartet haben.‹
Michael O., Basler Versicherungen

›Das thematisch flexibel gestaltete Seminar hat unsere Einsteiger und auch fortgeschrittenen Teilnehmer begeistert.‹
Ralph B., PiSA sales

›Wir kommen sicherlich wegen des nächsten geplanten Seminars auf den tutego-Trainer zurück.‹
Ralph B., PiSA sales

›Wir waren mit dem C# Seminar sehr zufrieden. Der Referent hat unsere Sonderwünsche sofort, kompetent und eingehend behandelt. Wir hoffen auf eine baldige Fortsetzung des Seminars zur Vertiefung des Stoffes. ‹
Winfried S., Lacroix Electronics

›Der Trainer hat die Balance zwischen den unterschiedlichen Vorkenntnissen von Anfängern und Fortgeschrittenen hervorragend gemeistert.‹
Brigitte K., Rutronik Elektronische Bauelemente GmbH

›Wir waren sehr zufrieden mit den Workshop und die Erwartungen wurden sogar übertroffen. Zudem ist auch die Nachbetreuung durch den tutego-Referenten exzellent.‹
Oliver J., SRS-Management

›Wir waren rundum zufrieden und würden uns freuen, den tutego-Referenten bei weiteren Schulungen in unserem Hause begrüßen zu dürfen.‹
Carsten P., Barmenia Versicherungen

›Ihr Dozent hat bei uns für zwei spannende Tage gesorgt, ich habe nur positive Feedback von meinen Kollegen gehört. Sowohl seine Kompetenz als auch der Inhalt der Schulung, sowie die Art und Weise, wie er das präsentiert hat, kamen sehr gut an!‹
Wladimir J., circ IT

›Das Java Seminar hat uns einen grossen Schritt nach vorne gebracht, da es genau auf unsere Bedürfnisse zugeschnitten war. Vielen Dank nochmals dafür.‹
Wolfgang S., signotec

›Der Dozent hatte sich relativ schnell auf unser doch sehr hohes Niveau eingestellt und die Schulung entsprechend dynamisch angepasst.‹
Torsten L., Netbiscuits

›Die Schulung [...] hat prima geklappt und die Teilnehmer waren ausnahmslos mit dem Trainer sehr zufrieden. Das vermittelte Wissen wird uns sicher den Start in eine neue Technologie ermöglichen.‹
Hendrik F. d. C., Wincor Nixdorf International

›Der Trainer war gut vorbereitet und hoch motiviert und er hat zwischen Frontvortrag, interaktiver Entwicklung des Stoffs am Whiteboard und praktischen Übungen am PC gut gewechselt.‹
Hendrik F. d. C., Wincor Nixdorf International

›Ich würde den Dozenten jederzeit weiterempfehlen und wäre auch nicht abgeneigt, weitere Kurse von Ihm abhalten zu lassen.‹
Torsten L., Netbiscuits

›Der Primefaces Kurs mir persönlich sehr gut gefallen. Der Kursleiter hat es geschafft uns die Besonderheiten von PrimeFaces zu vermitteln.‹
Greta Z., Raiffeisenverband

›Der Referent ist auch auf unsere Fragen eingegangen und hat diese sehr professionell beantwortet.‹
Greta Z., Raiffeisenverband

›Die Themen waren spannend und sehr breit aufgestellt. Der Trainer hat die Themen gut vermittelt.‹
Teilnemer, gadiv