支持
While we do not support the entirety of the Java EE
specification, many of its individual components are supported. These
include:
- Java Data Objects (JDO) -- notes
- Java Persistence API (JPA) -- notes
*
- Java Server Faces (JSF) 1.1 - 2.0
**
- Java Server Pages (JSP) + JSTL ***
- Java Servlet API 2.4 -- notes
- JavaBeans™ Activation Framework (JAF)
- JavaMail -- notes
- XML processing APIs including DOM, SAX, and XSLT
*
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:
- Enterprise Java Beans (EJB)
- JAX-RPC
- JAX-WS
- JAXB
- Java Database Connectivity (JDBC) **
- Java EE™ Connector Architecture (JCA)
- Java Management Extensions (JMX)
- Java Message Service (JMS)
- Java Naming and Directory Interface (JNDI)
- Remote Method Invocation (RMI)
**
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.
JVM-based Languages
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
- Scala works out-of-the-box as does the Lift Web Framework for Scala.
- Scala Actors do not work, because they are implemented using threads, which are not supported.
- Dave Briccetti has posted his experience running Scala with App Engine to his blog
.
Miscellaneous Java™ Libraries and Frameworks
Apache Commons FileUpload
Version: 1.2.1
Status: SEMI-COMPATIBLE
- The streaming API added in version 1.2.1 works out of the box.
- The
traditional API is not supported due to dependencies on java.io.File
(App Engine does not expose a writable file system), although a custom
FileItemFactory implementation that does not rely on writing files
should work.
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
- As per this FAQ
, you need set a specific configuration error to avoid a runtime permissions error. Otherwise, you will see java.security.AccessControlException: access denied (java.net.NetPermission getCookieHandler)
when you try to use the library.
Google Web Toolkit (GWT)
Versions: All
Status: COMPATIBLE
Grails
Version: 1.1.1
Status: SEMI-COMPATIBLE
- A
plugin has been made available which integrates the App Engine SDK with
Grails, adding features to upload Grails application automatically and
run the local dev server. To download this plugin or see a screencast
and tutorial, see http://grails.org/plugin/app-engine
.
- As of now, you have to use the "grails
app-engine run" command rather than "grails run-app", which blocks
other plugins that extend run-app including the GWT plugin. More
incompatibilities noted in this thread
.
GraniteDS
Version(s): ?
Status: COMPATIBLE
Guice
Version(s): ?
Status: SEMI-COMPATIBLE
Notes:
Hibernate
Versions: All
Status: INCOMPATIBLE
- You
cannot currently use Hibernate directly. The differences between the
App Engine datastore and SQL were too great to get the standard
Hibernate up and running under App Engine. App Engine does support JDO
and JPA, so you may be able to convert your Hibernate code to use one
of these ORM interfaces.
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
- Jersey
does not run in App Engine's production environment out-of-the-box, but
you can make some modifications to get basic uses working. Several of
these are documented at http://lqd.hybird.org/journal/?p=123
.
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
- The team has created an adaptation of Restlet
just for App Engine.
- See
http://wiki.restlet.org/developers/172-restlet/251-restlet.html for
instructions on tuning a standard installation of Restlet for App
Engine.
RichFaces
Version: 3.1.6
Status: INCOMPATIBLE
- RichFaces depends on the javax.imageio package which is presently not listed on the JRE class whitelist
.
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
- Version
5.1 appears to rely on the Woodstox XML processor, which in turn relies
on javax.xml.stream.XMLInputFactory, which isn't on the current JRE class white list
. No workarounds are known at this time.
Tiles
Version: 2.0.7
Status: COMPATIBLE
- Older versions may not work.
Vaadin
Version(s): ?
Status: SEMI-COMPATIBLE
VRaptor 2
Version(s): ?
Status: COMPATIBLE
- Requires App Engine sessions to be enabled
.
WebORB
Version(s): ?
Status: COMPATIBLE
Wicket
Version(s): ?
Status: SEMI-COMPATIBLE
ZK
Version(s): 3.6.2 +
Status:
COMPATIBLE
分享到:
相关推荐
标题中的"appengine-java-sdk-1.3.1"指的是Google App Engine的Java版本SDK,这是一个用于在Google云平台上开发和部署Java应用程序的工具包。这个SDK包含了运行和测试Google App Engine应用所需的所有组件,包括开发...
Google App Engine for Java为Java开发者提供了一个全面而强大的云计算平台,不仅支持常见的Java Web开发技术,还引入了一系列创新特性,如自动伸缩、易于部署等,极大地降低了构建高性能Web应用的技术门槛。...
总结来说,"appengine-java-sdk"是开发和运行Java应用程序在谷歌AppEngine上的基石,它集成了GWT的支持,为开发者提供了完整的开发、测试和部署解决方案。利用这个SDK,开发者可以构建高效、可扩展的云应用,并享受...
Google App Engine for Java 是一个平台,允许开发者使用Java语言构建并托管网络应用程序,该平台运行在Google的强大可扩展基础设施上。这个平台的核心特性是它的Java运行时环境,它基于Java 6虚拟机(JVM),并且...
4. Java版本的兼容性:文中强调了需要使用JDK1.7来编译代码,原因是Google App Engine在沙箱环境中仅支持Java 7的虚拟机。如果试图访问使用Java 8编译器编译的代码,将会在浏览器中显示GAE500服务器错误。因此,对于...
在“google-appengine-docs-20081003”这个压缩包中,可能包含了早期版本(2008年10月3日)的Google App Engine开发指南、API参考、最佳实践和示例代码等内容。这些文档帮助开发者了解如何利用Google App Engine构建...
The App Engine SDK for Java includes a local development server as well as the tooling for deploying and managing your applications in App Engine. By downloading, you agree to be bound by the Terms ...
在谈论《云端代码Google App Engine编程指南》之前,我们需要先了解一下Google App Engine(GAE)平台的背景知识。Google App Engine(简称GAE)是由Google公司提供的一个无服务器(serverless)的云计算平台,该...
《 Beginning Java™ Google App Engine》是一本面向初学者至中级开发者的专业指南,旨在教你如何使用Java技术在Google App Engine上构建云端应用。Google App Engine是一个强大的云计算平台,它为Java开发者提供了...
Appengine-java-sdk 包含了一系列工具和库,用于支持 Java 应用程序的开发。通过这个 SDK,开发者可以在本地环境中运行和调试应用程序,检查其性能和功能是否满足预期。此外,SDK 还提供了命令行工具,用于上传应用...
Java版本的App Engine,即我们讨论的"appengine-java-sdk-1.8.7.zip",是Google专门为Java开发者提供的工具包,用于在GAE上开发应用。 **主要组件和功能** 1. **SDK(Software Development Kit)**: SDK包含了开发...
**Google App Engine**是Google提供的一种云计算平台,用于构建和托管Web应用程序。它允许开发者使用Python、Java、Go或PHP等语言编写应用,并在Google的基础设施上运行,无需关心服务器维护、扩展性和高可用性等...
Beginning Java Google App Engine - Kyle Roche and Jeff Douglas.pdf Google App Engine is one of the key technologies to emerge in recent years to help you build scalable web applications even if you ...
安装完必要的工具后,可以通过Appengine-java-sdk在本地启动模拟器。这将模拟实际的App Engine环境,让你可以在开发过程中测试应用程序的功能和性能。 **2.5 上传应用程序到App Engine 上** 完成开发和测试后,下...
Eclipse Google 插件 Google App Engine SDK for Java Google App Engine文档 按钮 Google App Engine 开发包
Google App Engine(简称GAE)是Google于2008年推出的一项云服务,允许开发者使用Python、Java、Go等多种语言构建并部署Web应用。GAE提供了自动扩展、高可用性和全球分布等特性,使开发者能够专注于编写代码而无需...
谷歌App Engine是Google提供的一个平台即服务(PaaS)产品,允许开发者构建并运行Web应用程序。这个"google_appengine_1.9.50.7z"是一个压缩包,包含了Google App Engine的Python SDK版本1.9.50。这个SDK是开发人员...