6

I'm teaching a college course on mobile application development and would like to introduce my students to a REST framework for use with App Engine, to help them with data storage for the Android apps they're building. Could anyone recommend a Java REST framework for App Engine that meets the following criteria:

Must have:

  • Easy learning curve
  • Well-documented, with clear tutorials and sample programs
  • Clean abstractions
  • Free as in beer
  • Works well with Eclipse

Nice to have:

  • Android client
  • Free as in speech

Not important:

  • Able to support large query volumes
  • Highly customizable

From my web searching, Restlet looks best. Is there any other framework I should consider?

Ellen Spertus
  • 5,875
  • 9
  • 47
  • 82
  • 1
    Have you looked at Spring rest template? http://static.springsource.org/spring-android/docs/1.0.x/reference/html/rest-template.html – CoolBeans Mar 30 '11 at 01:15
  • I second your assessment of Restlet. – stinkymatt Mar 30 '11 at 02:42
  • I added the requirement that the framework work well with Eclipse. – Ellen Spertus Mar 30 '11 at 21:35
  • Restlet JARs are also OSGi bundles so the fit with Eclipse should be great. There is also work going on regarding advanced integration of Restlet with Equinox (hot addition of resource, applications, etc.) – Jerome Louvel Mar 31 '11 at 17:21
  • I took people's advise and used Restlet and JAX-RS, but I got stuck. Can anyone help with this question? http://stackoverflow.com/questions/5495801 – Ellen Spertus Apr 02 '11 at 15:57

3 Answers3

5

Well, I would highly recommend 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 helpful 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 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...

opensas
  • 52,870
  • 69
  • 227
  • 340
4

Jax-RS...Restlet was written before this but was modified to implement Jax-RS.

This is a similar answer you might find useful.

Community
  • 1
  • 1
Paul Morgan
  • 26,842
  • 3
  • 22
  • 27
  • I went with the suggestion of using Restlet and Jax-RS and have had a miserable past six hours. Unfortunately, I found the documentation incomplete and only partly updated from Restlet 1.x to 2.x, and I couldn't even post a question to the mailing list without waiting hours for moderation, which still hasn't come through. I don't blame you for my suffering, though. It is very possible that other solutions would have been even worse, and I eventually got things working. – Ellen Spertus Mar 31 '11 at 02:38
  • I had the same experience. Restlet is a piece of crap. See my question and answers: http://stackoverflow.com/questions/4051397/restlet-posting-json-to-appengine-error – Peter Knego Mar 31 '11 at 09:32
  • 3
    I don't understand how you guys can be so rude. I don't pretend Restlet to be perfect, and are always looking for ways to improve. Could you be more specific about what failed, in which version? Regarding documentation, which page needed an update exactly? Did you read the tutorials, the user guide, the Restlet in Action book (first chapter free)? Regarding spam filtering, sorry but we have to moderate each message from new posters and don't necessarily live in the same time zone. Hope this helps! – Jerome Louvel Mar 31 '11 at 16:50
  • 1
    Sorry, I didn't mean to be rude. I am very grateful for free software and was just telling my students today how wonderful it is that people create these tools for free. I also don't blame you for moderating the mailing list. I was just explaining why I had to struggle on my own. I did add comments to the Restlet docs indicating where they were unclear (e.g., had broken links) and provided a suggested configuration file. The details of where I got stuck are in a separate post [http://stackoverflow.com/questions/5495801] and on the Tigris mailing list. Thanks for checking in. – Ellen Spertus Mar 31 '11 at 19:14
0

Could you take a look Spring framework?

i think it may be contented with your request.

LVEYO
  • 356
  • 2
  • 5