`

Google App Engine支持哪些技术,不支持哪些技术(Java平台)

阅读更多

这篇文章来自于:http://groups.google.com/group/google-appengine-java/web/will-it-play-in-app-engine?pli=1

支持

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 GoogleApp开发的SDK(Java版)

    标题中的"appengine-java-sdk-1.3.1"指的是Google App Engine的Java版本SDK,这是一个用于在Google云平台上开发和部署Java应用程序的工具包。这个SDK包含了运行和测试Google App Engine应用所需的所有组件,包括开发...

    google app Engine for java中文api

    Google App Engine for Java为Java开发者提供了一个全面而强大的云计算平台,不仅支持常见的Java Web开发技术,还引入了一系列创新特性,如自动伸缩、易于部署等,极大地降低了构建高性能Web应用的技术门槛。...

    appengine-java-sdk

    总结来说,"appengine-java-sdk"是开发和运行Java应用程序在谷歌AppEngine上的基石,它集成了GWT的支持,为开发者提供了完整的开发、测试和部署解决方案。利用这个SDK,开发者可以构建高效、可扩展的云应用,并享受...

    Google App Engine for Java 中文指南

    Google App Engine for Java 是一个平台,允许开发者使用Java语言构建并托管网络应用程序,该平台运行在Google的强大可扩展基础设施上。这个平台的核心特性是它的Java运行时环境,它基于Java 6虚拟机(JVM),并且...

    Google App Engine 入门教程

    4. Java版本的兼容性:文中强调了需要使用JDK1.7来编译代码,原因是Google App Engine在沙箱环境中仅支持Java 7的虚拟机。如果试图访问使用Java 8编译器编译的代码,将会在浏览器中显示GAE500服务器错误。因此,对于...

    Google App Engine Documentation

    在“google-appengine-docs-20081003”这个压缩包中,可能包含了早期版本(2008年10月3日)的Google App Engine开发指南、API参考、最佳实践和示例代码等内容。这些文档帮助开发者了解如何利用Google App Engine构建...

    google appengine sdk for java

    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编程指南》之前,我们需要先了解一下Google App Engine(GAE)平台的背景知识。Google App Engine(简称GAE)是由Google公司提供的一个无服务器(serverless)的云计算平台,该...

    Begin Java Google APP Engine

    《 Beginning Java™ Google App Engine》是一本面向初学者至中级开发者的专业指南,旨在教你如何使用Java技术在Google App Engine上构建云端应用。Google App Engine是一个强大的云计算平台,它为Java开发者提供了...

    Google App Engine for Java 快速使用指南 - 中国科学技术大学

    Appengine-java-sdk 包含了一系列工具和库,用于支持 Java 应用程序的开发。通过这个 SDK,开发者可以在本地环境中运行和调试应用程序,检查其性能和功能是否满足预期。此外,SDK 还提供了命令行工具,用于上传应用...

    appengine-java-sdk-1.8.7.zip

    Java版本的App Engine,即我们讨论的"appengine-java-sdk-1.8.7.zip",是Google专门为Java开发者提供的工具包,用于在GAE上开发应用。 **主要组件和功能** 1. **SDK(Software Development Kit)**: SDK包含了开发...

    Google App Engine文档

    **Google App Engine**是Google提供的一种云计算平台,用于构建和托管Web应用程序。它允许开发者使用Python、Java、Go或PHP等语言编写应用,并在Google的基础设施上运行,无需关心服务器维护、扩展性和高可用性等...

    Beginning Java Google App Engine

    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 ...

    Google App Engine for Java快速入门指南v1.2.0

    安装完必要的工具后,可以通过Appengine-java-sdk在本地启动模拟器。这将模拟实际的App Engine环境,让你可以在开发过程中测试应用程序的功能和性能。 **2.5 上传应用程序到App Engine 上** 完成开发和测试后,下...

    Google App Engine 开发包(part1,共2部分)

    Eclipse Google 插件 Google App Engine SDK for Java Google App Engine文档 按钮 Google App Engine 开发包

    Using Google App Engine

    Google App Engine(简称GAE)是Google于2008年推出的一项云服务,允许开发者使用Python、Java、Go等多种语言构建并部署Web应用。GAE提供了自动扩展、高可用性和全球分布等特性,使开发者能够专注于编写代码而无需...

    google_appengine_1.9.50.7z

    谷歌App Engine是Google提供的一个平台即服务(PaaS)产品,允许开发者构建并运行Web应用程序。这个"google_appengine_1.9.50.7z"是一个压缩包,包含了Google App Engine的Python SDK版本1.9.50。这个SDK是开发人员...

Global site tag (gtag.js) - Google Analytics