Advanced GWT™
Private Training Price : $7995 for up to 3 students*
*Additional students subject to a nominal fee
- Advanced GWT Training Class Summary
-
Google Web Toolkit (GWT) allows Java developers to create Web 2.0-ready Ajax front ends. GWT compiles these Java artifacts into optimized JavaScript for all major browsers. This intensive, hands-on course explores advanced GWT features from user interface widgets to client-server integration. First, students will learn how to create and use GWT modules. From there, they will explore many advanced user interface widgets and panels. Then they will learn how to apply styles to GWT widgets with CSS. Next, students will learn to create their own composite widgets. JUnit testing is the focus of the next chapter, followed by a chapter on the GWT Java Emulator. Students will then learn about various connectivity and integration features of GWT as well as how to invoke native JSNI methods. Finally, the course ends with a chapter on GWT best practices.
Audience: Java developers who wish to quickly create Ajax application with the Google Web Toolkit.
Prerequisites: GWT and Java programming experience is required. Basic knowledge of HTML, CSS, and JavaScript is recommended. Previous experience doing widget-based Form development using events as well as HTTP exposure is beneficial.
Class Length: 3 days
- Advanced GWT Training Class Objectives
-
- Create and use modules in GWT.
- Design user interfaces with more advanced GWT widgets including the ToggleButton, Tree, SuggestBox, and RichTextArea.
- Style GWT widgets with CSS.
- Create your own composite widgets.
- Develop and execute GWT unit tests with JUnit
- Discover the GWT's Java Emulator, its capabilities and limitations.
- Describe advanced connectivity mechanisms, polling and related concepts.
- Use the various integration options to work with servers, including XML, JSON and GWT-RPC.
- Declare and invoke native JSNI methods.
- Describe some best practices on performance and avoiding pit falls.
- Advanced GWT Training Class Detailed Outline
-
- Using Modules in GWT
- GWT Modules
- Using External Modules
- Modularizing an Application
- Deferred Binding
- Multiple-Module Applications
- Code Splitting
- More on GWT User Interfaces
- ToggleButton and PushButton
- DecoratorPanel
- AbsolutePanel
- HTMLPanel
- FocusPanel
- HorizontalSplitPanel and VerticalSplitPanel
- StackPanel
- DeckPanel
- TabPanel
- Using Menus via a MenuBar
- Tree
- SuggestBox
- GWT RichTextArea Editing
- FormPanel
- DeferredCommand
- Styling with CSS in GWT
- Styling with CSS
- GWT Visual Themes
- Styling Widgets in GWT
- Associating CSS Files with a Module
- Dependent Styles in Widgets
- More ClientBundle Elements: CSS Resources, Data Resources, and External Resources
- Creating Composite GWT Widgets
- Custom GWT Widgets
- Composite GWT Widgets
- Developing Composite Widgets
- Testing and Debugging GWT Modules in GWT
- Testing and Debugging GWT Modules
- Unit Testing Concepts
- The JUnit Test Framework
- Writing a JUnit Test Case
- GWT Unit Testing with GWTTestCase
- Running junitCreator
- Testing Asynchronous Code
- GWT Java Emulation
- Java Emulation in GWT
- The Java Language Subset in GWT
- Java Classes and Features in GWT
- Restrictions on Java in GWT
- Similar yet Different JRE and Emulated Classes
- The GWT Compiler
- GWTx (Extension Libraries)
- Advanced GWT Connectivity
- Stateful and Stateless Servers
- The Model-View-Presenter Approach
- Using Stateful Servers
- Handling Exceptions
- Client-Side RPC Architecture in GWT
- Client-Side Polling
- Server Push
- Polling Protocols
- More Server Integration Options in GWT
- More Server Integration Options in GWT
- Using HTTP Requests
- Manipulating an XML DOM
- Integrating Using JSON
- GWT JavaScript Native Interface
- GWT JavaScript Native Interface
- Defining JSNI Methods
- Sharing Data between JavaScript and Java
- Talking to the Browser via JSNI
- Using External JavaScript
- Using a JavaScriptObject in GWT
- Java Callbacks from External JavaScript
- Using External Libraries
- GWT Best Practices
- Security Issues
- Performance Concerns
- Internationalization in GWT
- GWT Pitfalls and Issues
- Testing Practices for GWT
- Bandwidth-Sensitive Applications
- Using Modules in GWT



