The XMPP service is another great way to enable your application to reach out to your
user base in more creative ways. Traditional e-mail is available in almost every
consumer application. Google provides a simple, easy-to-use XMPP service that
allows you to create cutting-edge applications that can actually instant message
In this chapter you took a tour of the services that App Engine provides. First, you
reviewed the Memcache service, which allows you to cache data to keep from making
roundtrips to the data store and to maximize the speed of your application. Next, you
tried out the URLFetch service. URLFetch can be used to interact with RESTful APIs,
send POST data, and get HTTP responses. Finally, you constructed a brief
demonstration that pulls the HTML response from www.google.com us ing a GET
The other three services were a bit more advanced. You built a servlet to accept an
uploaded image file, which you stored in the App Engine data store. You then took
this image and transformed it using the App Engine Images service. You flipped the
image on the vertical axis and rendered both the original and the altered versions
back to the user. Finally, you got a brief look at two App Engine services that allow
you to interact with users outside of your application. The Mail API can be used to
send messages to individuals or distribution lists. You built a servlet that sends an e-
mail with a simple message to a hard-coded user. Then you took that a step further
and sent a user an instant message using the XMPP service that App Engine provides.
All these services increase the value of building your application on Google App
Engine. Having these services available to you in such an easy fashion makes you
wonder why you'd ever need to build an application stack from the bottom up again.
In Chapter 9 we're going to take a look at some more advanced scenarios using
Google App Engine.