Sunday, February 17, 2013

Google Web Toolkit and Google App Engine With PhoneGap for Mobile Apps

Google Web Toolkit and Google App Engine With PhoneGap for Mobile Apps

To write Java EE server side code and Java client code that deploys to the cloud and serves thin, mobile and headless clients - I find Google Web Toolkit used within Eclipse that deploys to Google App Engine using a Google Cloud SQL instance works very well.  If you go one step further and package your client HTML5/JS client code using PhoneGap for iOS and Android then you have a full end to end solution.

The following diagram illustrates various start and end points when developing thin or mobile clients.

Options for generating native, thin and hybrid mobile clients


Sequence diagram for generating HTML5 based mobile apps from Java using GWT and PhoneGap

Getting Started

I am interested in getting the JPA 2.0 provider working in Google App Engine.  Unfortunately Google does not use the open source EclipseLink JPA 2.0 provider - instead it uses the DataNucleus provider.

There are a lot of differences and constraints on the JPA 2 provider - here are some of the highlights.

You must use the Key PK wrapper - which shares implementation with JDO

import com.google.appengine.api.datastore.Key
[0] Nutrient (id=164) id Key (id=169) jdoDetachedState null jdoFlags 1 jdoStateManager JDOStateManager (id=171) name "aName" (id=178)


Software

Eclipse 3.8/4.2 with DTP, GWT
Google Web Toolkit 2.5
Vaadin for GWT - use the Eclipse Plugin
Google App Engine
PhoneGap/Cordova 2.4

Google App Services

Google Datastore using the paxos algorithm:  

Links


No comments:

Total Pageviews

Followers