Home About Courses Schedule Services Webinars Contact Search

Advanced GWT


Duration: 3 Days

Method: Instructor led, Hands-on workshops

Price: $1800.00

Course Code: GG1015


GWT developers looking to take their knowledge to the next level.


The Advanced Google Web Toolkit development training explores advanced Google Web Toolkit capabilities enabling developers to create sophisticated interactive applications.


Upon successful completion of this course, the student will be able to:

  • Effectively use GWT’s DOM management capabilities.
  • Utilize JSNI to communicate between Java and JavaScript
  • Describe the significance of Code Splitting and Client Bundles
  • Learn to develop and execute unit testing and benchmarks in GWT
  • Utilize HTML 5 support and GWT Mobile UI for bleeding-edge applications
  • Address Security and Performance Issues concerning GWT


The Advanced GWT training course builds on the Introduction to GWT course.


  • I. Google Web Toolkit Revisited
    • How AJAX changed the way we interact with the web
    • Challenges of AJAX and the motivation for GWT
    • Exploring the evolution of GWT – what’s there, what’s gone
  • II. Reviewing the GWT Project
    • Setting up the default and blank projects
    • Building up the Blank Project and filling in the missing pieces
    • The Module Descriptor gwt.xml file
    • Web.xml
    • HTML, CSS templates
    • Compiling the project
  • III. Building a GWT Project with Best Practices
    • Introducing MVP coding practices
    • Exploring GWT Application Architecture
    • Using the Locations and Places Framework
    • GWT-Platform and GWT-Dispatch
    • Client-side Frameworks and Library Integrations
    • Testing and Debugging with MVP Frameworks
    • Code Splitting Tasks
    • Reviewing compiled JavaScript Code
  • IV. Working with GWT Modules
    • Encapsulating Functionality into a GWT module
    • Getting Started
    • Creating a Module for reuse
    • Integrating Modules
    • Using External Modules
    • Breaking down an application into Modules
    • Setting Paths and Resources in GWT Modules
  • V. Working with Java Objects in GWT
    • A subset of the Java Runtime library
    • What is supported, what is not
    • Differences between the JRE and emulated classes
    • Class equivalencies
  • VI. DOM Management
    • Elements in the DOM are not what they seem – consistency and Quirks mode
    • DOM Methods and Events
    • DOM Events
    • Demonstrating DOM manipulation
    • Tips and Best Practices
  • VII. Using JSNI
    • Using GWT and JavaScript Native Interface (JSNI)
    • Invoking JSNI from Java
    • Invoking JavaScript from within Java
    • Java Callbacks from external JavaScript
    • Using JavaScript Objects in Java
  • VIII. Creating Composite and Custom Widgets
    • Reviewing how Composite Widgets are constructed
    • Taking it to the next level with Custom Widgets
    • Using Custom Widgets
  • IX. Implementing Advanced Interaction with GWT Designer/ WindowBuilder
    • Review of GWT Designer/WindowBuilder
    • Setting up a project
    • Using UI Binders
    • Handling Events
    • Using Custom Widgets with GWT Designer /Window Builder
    • Passing arguments to a designed Widget
    • External Resources with UIBinder
    • Sharing Resource Instances
    • Applying XML Templates to the same widget
    • Getting the properties of rendered elements
    • Accessing Style with UIRenderers
    • Role of GWT Designer, UI Bundles and code design patterns
  • X. Addressing Internationalization and Accessibility Concerns
    • Re-introducing Resource Bundles
    • Exploring i18n
    • Setting up Bundles in GWT
    • Using Bundles for i18n
    • Accessibility Concerns
    • Making Widgets Accessible
    • Introducing ARIA
    • Making maximum use of the keyboard for accessibility
    • Accessibility within Selection-based controls and labels
  • XI. Client-Server Communications with GWT
    • Client-Server Communication Methods
    • Required Components for Client-Server Communication
    • Using RemoteService and RemoteServiceServlet
    • Processing the results through AsyncCallBack
    • Data Formats: JSON and XML
    • Working with Hibernate and RequestFactory
  • XII. . GWT and Framework Integration
    • GWT is only one part of a complete application
    • Server Framework Overview – Spring Framework and related projects, JSF/Facelets, 
    • What’s currently out there?
    • Exploring and example of GWT and Spring
    • Troubleshooting
  • XIII. Mobile Application Development with GWT
    • Introducing GWTMobile
    • Features of GWTMobile
    • Navigation Choices
    • Building Screens
    • Constructing an Example
    • Advanced Feature Exploration
    • Next Steps
  • XIV. GWT’s Additional Features, Challenges and Future
    • Controlling Chain of Command Control with IncrementalCommand
    • Working with Visualization APIs for Advanced Charting
    • Addressing Security Issues
    • Exploring Performance Tuning – SpeedTracer; LightWeight Metrics; Compile Reporting
    • JavaScript optimizations with GWT – String optimization techniques, closures, and related issues
    • GWT and caching
    • GWT and DART
  • XV. Closing Discussions