简体   繁体   中英

Is there a port of Apache Shinding, Java version, that runs on Google App Engine?

I've been searching the web for a Apache Shindig Java port to Google App Engine, but I only found a Python version. Is there a Java port? or are there blocking dependencies that make it very hard to port Apache Shindig to Google App Engine (besides the database part)?

Unfortunately, there is currently no GAE Java port of Apache Shindig. However, you do have options:

  • If you consider porting to the Java port yourself, I also recommend starting from the existing Python-GAE port or the PHP-non-GAE port instead of from the Java-non-GAE port.
  • Additionally, you may consider running the Python-GAE port using Jython on the GAE Java SDK, instead of porting your own version from scratch.

Read below for more details:

Use Jython to port Python-GAE to java-GAE :

The main advantages of using the Jython abstraction are as follows:

  • You may have a working Java-GAE SDK version up and running sooner rather than later.
  • You will still have the option to port the Jython code to pure Java in the future, in small iterations, as your business goals allow.

On a side note, I have a version of the JQuery Form Builder Plugin running on the Java SDK:

  • Originally written in PHP for the LAMP stack
  • Running on the GAE-Java SDK
  • Using the Querces PHP Servlet to compile the PHP to Java.
  • The original Form Builder PHP code can access a Java DAO class that I wrote as a wrapper around the data store.

Jython is a similar abstraction that may help in a similar manner and avoid the need to rewrite most of the code. Read more below about Jython development on Google App Engine: Jython Development on Google App Engine

Avoid trying to port from Java-non-GAE to Java-GAE

The Java version of the OpenSocial application is multithreaded, so it will have a lot of trouble running on App Engine. Moreover, it's definitely easier to port the PHP version to Java, as App Engine doesn't support multi-threading at this time, and the PHP version is most likely not multi-threaded.

As a result, this is why the Python OpenSocial port's roots belong to the PHP version of Shindig/OpenSocial and not the Java port. I suggest following their lead and doing the same, if you do decide to port from the non-GAE version.

There doesn't seem to be a project which specifically runs on Java on the Appengine. However it should be possible to port the current java version to Appengine as there is a python version which has the same limitations.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM