Introduction to GWT

Introduction to Google Web Toolkit Training

The Introduction to GWT training course examines the ins-and-outs of developing web applications using the GWT framework.

The Google Web Toolkit training course begins with a review of web application concepts and technologies, like JavaScript, JSPs, etc. It then examines the architecture of a common GWT application, in terms of functionality, seperation of concern, and component modularization. With the foundation laid, the course then examines the GWT framework and concludes with an exploration of GWT-Ext.

Introduction to GWT assumes students have experience working with JavaScript and Ajax.

Course Summary

Learn how to build web applications using GWT.
Experienced Java developers looking to adopt GWT and GWT-Ext.
Skill Level: 
Learning Style: 

Hands-on training is customized, instructor-led training with an in-depth presentation of a technology and its concepts, featuring such topics as Java, OOAD, and Open Source.

Hands On help
4 Days
Productivity Objectives: 
  • Understand the origins of GWT, what GWT does, and how it addressed the challenges of building AJAX applications
  • Learn about GWT’s infrastructure, project setup and code artifacts
  • Learn to use GWT’s predefined widgets – controls and containers
  • Implement GWT events and handlers to build interactive applications
  • Learn how to style GWT widgets with CSS and how to manage styles
  • Learn how to make composite widgets
  • Built a GWT-based application
Introduction to GWT is part of the Google Training curriculum.

What You'll Learn

In the Introduction to GWT training course you’ll learn:

  • Introducing GWT
    • What is Google Web Toolkit?
    • Competitive Frameworks
    • Motivations for Moving to GWT
  • Getting Started with GWT
    • Setting up the GWT development environment
    • Creating your first GWT project
    • Exploring the GWT Project Structure
    • A quick look at how to debug your GWT Project
    • Publishing your GWT solution
  • Google Web Toolkit User Interfaces
    • Understanding the GWT UI structure
    • Exploring GWT UI
    • Understanding the GWT Module descriptor
    • Exploring the Entry Point Class
    • Creating, Configuring and Laying out Widgets
    • Understanding and working with the RootPanel
    • Styling the UI with CSS
    • Modifying GWT Code
  • Core GWT Widgets
    • Buttons
    • Hyperlinks
    • Text
    • Selection
    • List
    • AutoSuggest
    • Configuring Widgets
  • Designing a GWT UI with Layouts
    • What is a Layout?
    • Types of Layout Managers in GWT
    • FlowingPanel
    • DockingPanel
    • FlexTable
    • Grid
    • PopupPanel
    • Dialog Boxes
    • Disclosure Panel
  • Event Handling in GWT
    • Google Web Toolkit Event Model
    • Key Event Concepts: Events and Handlers
    • Types of Events – Keyboard, Mouse, Tab, Cell
    • Using Event Handlers
    • Listener Adapter Objects
    • Managing browser differences
  • Working with GWT Utility Classes
    • GWT and Cookies
    • GWT Random Object
    • GWT Animation Class
    • GWT and File Uploading
    • GWT class
    • GWT Window Class
    • GWT Location Class
    • GWT Timer Class
  • Using Modules
    • Introducing GWT Modules
    • Module Architecture and Structure
    • Module Paths and Resources
    • Using External Modules
    • Modularizing GWT Applications
    • Setting Paths and Resources in GWT Modules
  • Additional GWT UI and Styling Exploration
    • PushButtons
    • Panels – Decorator, Absolute, HTML, Focus, Split, Stack, Tab and Deck Panels
    • Menus and Tree Widgets
    • Rich TextArea Editing
    • Styling with CSS
    • Style Dependency
    • Working with Images
  • Creating Composite Widgets
    • Defining Composite Widgets
    • Developing Composite Widgets
    • Implementing Composite Widgets in your GWT application
  • Designing GWT Applications
    • Setting up GWT Designer/WindowBuilder
    • Declarative Layouts with UIBinder
    • Using Composite Widgets with GWT Designer/WindowBuider
    • Setting up Event Handling
    • Passing arguments to a designed Widget
    • External Resources with UIBinder
    • Sharing Resource Instances
    • Applying XML Templates to the same widget
    • “Lazy” DOM and Panel Elements
    • Rendering HTML for Cells
    • Cell Event Handling with UIBinder
    • Getting the properties of rendered elements
    • Accessing Style with UIRenderers
    • Customizing the native GWT HTML Template
    • JavaScript Library Integration (JQuery, DOJO)
  • GWT and RPC Protocols
    • Client-Server Communication Methods
    • Processing the results through AsyncCallBack
  • Alternative GWT Connectivity
    • Front-end responsibilities for receiving data
    • GWT Serialization
    • GWT and JSON
    • JSON Types in GWT
    • Using JSONP
    • Making HTTP Requests
    • GWT and XML
  • GWT and JavaScript via 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
  • Testing and Debugging GWT
    • Testing and Debugging GWT Front-End Views
    • GWT and JUnit Testing
    • Benchmarking with GWT and SpeedTracer
    • Client-side performance Testing and JavaScript Optimization
  • GWT Client Infrastructure
    • Examining the compilation process and output
    • The GWT Application-loading Mechanism
    • Compiling Java to JavaScript
    • Exploring the produced JavaScript
  • Q/A


Get Custom Training Quote

We'll work with you to design a custom Introduction to GWT training program that meets your specific needs. A 100% guaranteed plan that works for you, your team, and your budget.

Learn More

Chat with one of our Program Managers from our Boulder, Colorado office to discuss various training options.

DevelopIntelligence has been in the technical/software development learning and training industry for nearly 20 years. We’ve provided learning solutions to more than 48,000 engineers, across 220 organizations worldwide.

About Develop Intelligence
Di Clients
Need help finding the right learning solution?   Call us: 877-629-5631