Google AppEngine Supports Java


Google AppEngine has added Java support (announcement). The list of JVM-based languages includes JRuby, Groovy, Jython and Scala.

A list of the supported standards is here; the intention seems to be to provide a "web tier" set of specs for Java and JVM-based languages but the details are not very clear (to me), for example, it claims Servlet 2.4 (not 2.5), some version of JPA, partial JSP support. Hopefully the list will evolve into one of the modern standard at some point; perhaps the Web Profile in Java EE 6?


The "version" of JDO and JPA is DataNucleus, with a plugin for BigTable. Consequently it cannot support all ORM concepts due to the underlying datastore, but the basic persistence mechanism is well-enough known and has passed all of the relevant TCKs.

Posted by Andy on April 07, 2009 at 09:04 PM PDT #

Hi Andy.

Thanks for the pointer to DataNucleus, I see it supports JPA 1.1. Can you tell us a bit about the "partial JSP" implementation? And, let us know if you guys are interested in GFv3 :-)

- eduard/o

Posted by Eduardo Pelegri-Llopart on April 08, 2009 at 01:24 AM PDT #

Hi Eduardo,
DataNucleus supports JPA1, and some preview features of JPA2; there is no "JPA1.1" AFAIK.

I can't tell you about any partial JSP implementation since that is AppEngine and I write DataNucleus itself ;-) Why not just read their docs
it has some listing for JSP being "Mostly full".

Posted by Andy on April 08, 2009 at 01:52 AM PDT #

re: JPA 1.1 - I believe you are right. There was a maintenance release for EJB3.0 but it was very small and didn't affect JPA (nor changed the version #).

re: JSP - Yes, I already looked at that page; that's why I was asking... "mostly full support" seems another way to say "not fully supported" :-)

Thanks for the pointer to DataNucleus. Have you guys tried it running on top of GlassFish? If you do, can you drop me an email? I'm pelegri at sun dot com. THanks, - eduard/o

Posted by Eduardo Pelegri-Llopart on April 08, 2009 at 07:39 AM PDT #

Paul reports that Jersey works in local but fails on remote deployment because there are missing classes... see

Posted by Eduardo Pelegri-Llopart on April 10, 2009 at 12:54 AM PDT #

Post a Comment:
Comments are closed for this entry.