RESTful application on Google App Engine Java?

我们两清 提交于 2019-11-28 13:18:52

问题


I would like to create a RESTful app on Google App Engine. I would like to provide XML and JSON services. I have briefly experimented with Restlet, Resteasy, and Jersey. I haven't had much success with any of them, other than some simple examples in Restlet.

Could you share your experiences creating a Restful web application on Google App Engine using Java or provide any insight on the aforementioned toolkits on GAE?

Thanks!

Edit (2009-07-25):

I have decided to use Restlet for the time being. It seems to work flawlessly so far. Please post any other insights/opinions you may have. What problems have you encountered? Have you successfully used Jersey/Restlet/Resteasy on GAE/J? If so, we want to hear about it!


回答1:


I'm happy to report that Restlet M3 works FLAWLESSLY on AppEngine 1.2.2. I have followed the "First steps" and "First resource" tutorials found http://restlet.com/technical-resources/restlet-framework/guide.

So, it seems to me that Restlet is the answer for your GAE/J Restful applications.




回答2:


I'm using Jersey on GAE. Here is the link for those who are interested about setting it up: (I'm using GAE SDK v1.4.0):

http://tugdualgrall.blogspot.com/2010/02/create-and-deploy-jax-rs-rest-service.html




回答3:


I am going to begin exploring this as well, but haven't started yet. I did find this framework, that says it should work, but like I said haven't tried it yet.

http://wiki.restlet.org/docs_1.2/13-restlet/275-restlet/252-restlet.html

If you get it working, or manage to get one of the above suggestions working, update everyone as I am sure there is interest in this.




回答4:


I'm using Restlet together with Guice on Google AppEngine. IMHO they fit together very well. See my recent blog post for further details: http://haraldpehl.blogspot.com/2009/11/google-appengine-restlet.html




回答5:


Since these valiant older solutions were patched together, Google has apparently supplied an Eclipse plugin to create a starter project that produces an App Engine app, an Android APK, and a Web app, all talking to one another over an interface defined by a single set of annotated object declarations.

Haven't tried this yet myself, but do have a look before trying any of the more heterogeneous examples described in the earlier messages above:

https://developers.google.com/eclipse/docs/appengine_connected_android

This Google video is also quite informative:

http://www.youtube.com/watch?v=NU_wNR_UUn4




回答6:


For what it's worth, there has been quite a bit of discussion on Jersey user lists wrt how to make Jersey work on GAE. It is bit tedious work due to GAE restrictions (missing classes from white lists -- hopefully resolved over time), but apparently can be made to work. So while not trivially easy, that might be your best bet; esp. since many of the problems faced are the same for all frameworks (imposed by GAE).




回答7:


Well, I would highly advice you to have a look at play framework

Have a look at the video on the homepage

It has a gae module

With siena as a orm to handle gae datastore

From all the java frameworks I've seen so far, I think it has the easier learning curve,

  • great documentation,

  • a tutorial to develop a complete application

  • very active and helpfull community,

  • free as in beer and also as in speech

  • highly scalable due to it's stateless out of the box design

  • rest friendly

  • highly customizable via it's modules and plugin approach

more over, taking into account it's for a college course, it's really easy to hack into the code, I could handle a couple of tickets and new features without any experience at all with java, just a couple of year developing web applications with php

other benefits

  • it's really easy to start, no complicated setup involved, just download and unzip the file and your are ready

  • great development experience, just fix the code and hit refresh, play autocompiles changes on the fly when running on development mode

  • fast and lightweight

  • fullstack, you don't have to integrate cumbersome frameworks to make it work

  • great errors report, no more endless error stack trace, just shows you the line with error

  • no xml configuration anywhere around

  • great support for tdd with selenium integrated test

I think the main advantage as a learning tool, is that it's possible to peek into the source code without feeling lost and the community support... The documentation is very clear, and you can learn a lot by just having a look at the source code...




回答8:


I recently put together a project template with Jersey, Guice and AppEngine at GitHub. It has been developed with SimpleDS, but it can be modified to work with Objectify / JDO easily. The project is live here.

It should be a good starting point for new projects.




回答9:


Here is a very very good tutorial Restlet/Android/GAE/Objectify with an example of a simple application. Sorry it's in french, but you can juste copy/paste the code, or use google traduction.

I followed it and had a working Android / GAE server communicating together in a 2 hours. It's a good base to start or test Restlet.

http://www.tutos-android.com/webservice-rest-android-appengine-restlet-objectify

Good Luck




回答10:


The 2 most cumbersome GAE REST API actions to make work, whether Java or .py, are graphics and how to undisplay private information. My little gae rest feed forked another project. I'm sure Java succeeds where python stuck due to the Java takes and gives more ways (advantages) as well as longer (slower) time to succeed (disadvantage) while python projects opens less ways to succeed (disadvantageous) and less development time (advantageous rapid development) to succeed the same.



来源:https://stackoverflow.com/questions/1014034/restful-application-on-google-app-engine-java

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!