While we do not support the entirety of the Java EE specification, many of its individual components are supported. These include:
* For a guide on "converting" between JPA and JDO, see the blog entry at http://objectuser.wordpress.com/2009/07/04/17-minute-jdo/ .
** JSF 1.1 appears to be working out-of-the-box. JSF 1.2 and JSF 2.0 should also work if you set the com.sun.faces.enableMultiThreadedStartup context parameter to false to your web.xml file. Setting this parameter to false (it's set to true by default) will prevent additional threads from being spawned. For more information on running JSF 2.0 in App Engine, see this Site .
*** JSP session beans are not supported.
There are various APIs and technologies that are not supported by App Engine at present for various reasons. These include:
** App Engine's underlying datastore is based on BigTable, not a traditional SQL-based RDBMS like MySQL or PostgreSQL. You may either use the low-level datastore API or the JDO or JPA object-relational mapping interfaces provided. Various JDBC wrappers are available for the datastore, and you may still be able to connect to in-memory databases such as the H2 database engine or HSQLDB.
NOTE: All JVM-based languages are subject to the same App Engine sandbox restrictions as Java.
BeanShell
Version(s): ?
Status: COMPATIBLE
CAL
Version(s): ?
Status: COMPATIBLE
Groovy
Versions: 1.6.1 +
Status: COMPATIBLE
JRuby (Ruby)
Versions: 1.3.1+
Status: COMPATIBLE (see notes)
Jython (Python)
Versions: 2.2, 2.5rc4 +
Status: COMPATIBLE
Quercus (PHP)
Version(s): ?
Status: COMPATIBLE
Rhino (JavaScript)
Version(s): ?
Status: COMPATIBLE
Scala
Version(s): ?
Status: COMPATIBLE
Apache Commons FileUpload
Version: 1.2.1
Status: SEMI-COMPATIBLE
Apache POI
Version(s): ?
Status: INCOMPATIBLE
BlazeDS
Version: 3.2.0.3978
Status: COMPATIBLE
Compass
Version(s): ?
Status: SEMI-COMPATIBLE
Direct Web Remoting (DWR)
Version(s): 2.0.5, 3.0 RC1
Status: COMPATIBLE
dyuproject (OpenID RelyingParty 2.0 implementation, OAuth consumer and service provider, JSON IOC, lightweight Servlet-based REST framework)
Version(s): ?
Status: COMPATIBLE
Ehcache
Version: 1.6.0
Status: COMPATIBLE
Facelets
Version: 1.1.14
Status: COMPATIBLE
Google Data (GData) client library for Java
Version(s): all
Status: COMPATIBLE
Google Web Toolkit (GWT)
Versions: All
Status: COMPATIBLE
Grails
Version: 1.1.1
Status: SEMI-COMPATIBLE
GraniteDS
Version(s): ?
Status: COMPATIBLE
Guice
Version(s): ?
Status: SEMI-COMPATIBLE
Notes:
Hibernate
Versions: All
Status: INCOMPATIBLE
ICEfaces
Version(s): ?
Status: UNKNOWN
iText
Version(s): ?
Status: INCOMPATIBLE
Java Topology Suite (JTS)
Version(s): 1.10
Status: COMPATIBLE
JBoss Seam
Version(s): ?
Status: SEMI-COMPATIBLE
Jersey
Version: 1.0.2
Status: SEMI-COMPATIBLE
log4j
Version(s): ?
Status: COMPATIBLE
MyFaces
Version: 1.1.6
Status: COMPATIBLE
OpenSocial client library for Java
Version(s): 20090402
Status: COMPATIBLE
OSGi
Version(s): ?
Status: SEMI-COMPATIBLE
Restlet
Version(s): ?
Status: COMPATIBLE
RichFaces
Version: 3.1.6
Status: INCOMPATIBLE
SiteMesh
Versions: 2.4.2 +
Status: COMPATIBLE
Spring MVC
Version: 2.5.6
Status: COMPATIBLE
Spring ORM
Version: 2.5.6
Status: COMPATIBLE
Spring Security
Version(s): ?
Status: SEMI-COMPATIBLE
Stripes Framework
Version(s): ?
Status: COMPATIBLE
Struts 1
Version: 1.2.28
Status: COMPATIBLE
Struts 2
Version(s): ?
Status: COMPATIBLE (see notes)
Tapestry
Version: 5.0.18
Status: COMPATIBLE
Version: 5.1
Status: INCOMPATIBLE
Tiles
Version: 2.0.7
Status: COMPATIBLE
Vaadin
Version(s): ?
Status: SEMI-COMPATIBLE
VRaptor 2
Version(s): ?
Status: COMPATIBLE
WebORB
Version(s): ?
Status: COMPATIBLE
Wicket
Version(s): ?
Status: SEMI-COMPATIBLE
ZK