Book review: Google Web Toolkit Solutions

Are browser quirks turning your Ajax project into a nightmare? Google Web Toolkit Solutions helps you free yourself from Ajax pitfalls by writing great Java applications instead and using Google Web Toolkit to turn them into slick, well-behaved Ajax applications, without the usual headaches and gnashing of teeth.

Ajax is everywhere these days, and although Ajax can simplify and improve user experience, the experience of Ajax developers is often far from simple and could stand improvement. Perhaps the biggest headache Ajax developers face is the painful world of cross-browser problems. Browser quirks add untold hours of aggravation to even the best planned Ajax projects. Something that works perfectly well in Firefox doesn't work properly in Internet Explorer, for example. Wouldn't it be great if there were a way to concentrate on designing a great application and not have to worry about getting it to work properly in multiple browsers? That's the goal of Google Web Toolkit.

Google Web Toolkit (GWT) is an open source Java development framework that allows Java developers to leverage their years of experience to build applications directly in Java, using the wealth of tools and best practices they already know so well, and then use GWT to translate the Java into JavaScript that runs well in multiple browsers without fussing over browser quirks.

David Geary's book, Google Web Toolkit Solutions, helps Java developers write excellent GWT applications. The author's goal is to "teach you how to kick ass with GWT."

This is not a book for GWT newbies. The authors (Geary's co-author is former Sun developer, author, and consultant Rob Gordon) very clearly explain in the beginning of the book that their aim is to put GWT developers into the fast lane--not to help people brand new to GWT get started. They don't explain how to acquire and install GWT. They do not supply a "hello world" example. Instead, they dive deeply into practical, non-contrived solutions experienced developers will appreciate.

If you're an experienced programmer, have some experience with GWT, and want a guide to an assortment of practical solutions, this is a great book for you. If you don't have programming experience, or if you're brand new to GWT, you'll want to learn a bit more elsewhere before tackling this book. Also, note that by "programming experience" I don't necessarily mean "Ajax programming experience" because one of the strengths of GWT is you needn't know much about Ajax to create Ajax applications. A Java developer with no Ajax experience, for instance, will find Google Web Toolkit Solutions very useful.

The 370 page book is organized into 12 chapters, each of which carefully explores a solution. The first solution is an overview of GWT fundamentals. Concepts covered in this chapter include: an introduction to GWT widgets, the anatomy of a GWT application, using GWT panels, and implementing remote procedure calls.

The 11 solutions that follow are: JavaScript integration, custom widget implementation, viewports and maps, access to online web services, drag and drop, simple windows, flex tables, file uploads, hibernate integration, deployment to an external server, and GWT and legacy code. Each solution begins with "stuff you're going to learn" that prepares the reader for the upcoming concepts, and ends with "stuff we covered in this solution" that reinforces the new concepts the reader just learned.

Geary has created a companion website that contains demos of all the solutions in the book. If you're curious about GWT, this companion website is a great place to see some working examples of GWT in action. The site also includes errata and other information that compliments the physical book.

It's worth mentioning that there seems to be a bit of confusion in these early days of GWT about how GWT compares to a framework like Ruby on Rails. GWT and Rails differ from one another and have different goals. While Rails is designed as an end-to-end solution that handles every aspect of the Model-View-Controller paradigm, GWT is essentially a client-side-only framework, aside from its support for Remote Procedure Calls to make queries against the server.

It's also worth mentioning that GWT doesn't entirely banish cross-browser problems. Even on the companion website, Geary discusses cross-browser problems that affect the solutions found in the book that you can verify yourself by using the demos in various browsers. That said, if the choice is between a few browser quirks squeaking past GWT and many browser quirks disrupting a regular Ajax development project, I for one would opt for GWT.

If you're planning on using Ajax and want to beef up your GWT skills, I highly recommend Google Web Toolkit Solutions. It's packed with practical information that will help you use GWT to its fullest, and the author's expertise, unabashed enthusiasm for the subject, and charismatic personality are evident in abundance throughout the text. David Geary wants you to kick ass with GWT, and with his book at the ready, you will.

Join the newsletter!

Error: Please check your email address.
Rocket to Success - Your 10 Tips for Smarter ERP System Selection
Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Brian Tanaka

LinuxWorld
Show Comments

Cool Tech

SanDisk MicroSDXC™ for Nintendo® Switch™

Learn more >

Breitling Superocean Heritage Chronographe 44

Learn more >

Toys for Boys

Family Friendly

Panasonic 4K UHD Blu-Ray Player and Full HD Recorder with Netflix - UBT1GL-K

Learn more >

Stocking Stuffer

Razer DeathAdder Expert Ergonomic Gaming Mouse

Learn more >

Christmas Gift Guide

Click for more ›

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Edwina Hargreaves

WD My Cloud Home

I would recommend this device for families and small businesses who want one safe place to store all their important digital content and a way to easily share it with friends, family, business partners, or customers.

Walid Mikhael

Brother QL-820NWB Professional Label Printer

It’s easy to set up, it’s compact and quiet when printing and to top if off, the print quality is excellent. This is hands down the best printer I’ve used for printing labels.

Ben Ramsden

Sharp PN-40TC1 Huddle Board

Brainstorming, innovation, problem solving, and negotiation have all become much more productive and valuable if people can easily collaborate in real time with minimal friction.

Sarah Ieroianni

Brother QL-820NWB Professional Label Printer

The print quality also does not disappoint, it’s clear, bold, doesn’t smudge and the text is perfectly sized.

Ratchada Dunn

Sharp PN-40TC1 Huddle Board

The Huddle Board’s built in program; Sharp Touch Viewing software allows us to easily manipulate and edit our documents (jpegs and PDFs) all at the same time on the dashboard.

George Khoury

Sharp PN-40TC1 Huddle Board

The biggest perks for me would be that it comes with easy to use and comprehensive programs that make the collaboration process a whole lot more intuitive and organic

Featured Content

Product Launch Showcase

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?