are open source, we can support the notion that an appropriate software stack can be
built starting with GWT and ending with a full open web solution.
After my earlier confession on my dislike of classic web development strategies, I
should now aver that GWT did change that for me. Working in a high-level setting, with
plenty of tools, and practically forgetting about browser quirks, HTML, CSS, and
JavaScript, while gaining in clarity, maintainability, and performance, has made web appli-
cation creation an enjoyable task again!
The Structure of This Book
Chapters 1 through 3 deal with the basic setup for working with GWT. After consider-
ing the main reasons and objectives for using GWT, we’ll study what other tools are
required for serious code development, the methodology to use, and the internal aspects
of projects.
Chapters 4 and 5 are the backbone for the book, for they deal with the basic design
patterns that we use for building the User Interface. The code style and idioms devel-
oped here will be used throughout the rest of the book.
Chapters 6 and 7 deal with communications with servers, either through RPC (to
connect with servlets) or through direct Ajax (to communicate with remote services).
Chapters 8 and 9 study how to add both JavaScript coding and third-party APIs to
your application. Together with the previous two chapters, everything that’s needed for
mashing up services and getting information from different sources will have been covered.
Chapters 10 and 11 have to do with common server related problems, such as security
aspects, and file upload and download.
Chapter 12 deals with developing GWT applications that will be used worldwide and
covers both internationalization and localization.
Finally, Chapters 13 through 15 consider general themes such as testing GWT appli-
cations, optimizing their performance, and finally deploying them.
Who Should Read This Book
This book goes beyond “just learn GWT,” and is targeted to programmers who already
have a basis of GWT programming and want to encompass other web applications, serv-
ices, APIs, and standards as well, to produce Web 2.0-compliant Rich Internet
Applications (RIAs). A previous experience with web development, possibly in a J2EE
environment, will come in handy.
Having read this book through, the reader should not only be able to develop a RIA
on his own by just using GWT, but he will also have a reference book to help solve the
common problems that arise in such applications. Complete source code is given for all
examples, so getting started is quicker.
xvi
Preface