Restlet is a REST framework for Java. It supports all REST concepts (Resource, Representation, Connector, Component, etc.) and is suitable for both client and server Web applications. It supports major Web standards like HTTP, SMTP, XML, JSON, WADL, and Atom. Many extensions are also available to integrate with Servlet, Spring, Jetty, Grizzly, Simple, JAXB, JAX-RS, JiBX, Velocity, or FreeMarker. A GWT version is also available.
RestyGWT is a GWT generator for REST services and JSON encoded data transfer objects. RestyGWT Rest Services allow you to define an asynchronous service API which is then implemented via GWT deferred binding by RestyGWT. It features generation of asynchronous RESTful JSON based service proxies, encoding and decoding of Java objects to JSON, and an easy-to-use REST API.
RoboZombie allows easy integration with remote services by allowing you to replicate an endpoint contract and generate a proxy to access it. Contracts can be very flexible in terms of the resources they access. These could be vary from static HTML content or an RRS feed, to a RESTful web service endpoint. Each endpoint contract is specified on a single interface using annotations to provide the communication metadata. It is then wired into your code via an annotation, where it is created, cached, and injected at runtime.
SerfJ provides a very easy way of developing Java REST Web applications. It helps you to develop your application over an elegant MVC architecture, giving more importance to convention than configuration. This means, for example, you will not need configuration files or annotations in order to specify which view serves a controller's method. However, SerfJ is very flexible, so if you want to jump over those conventions, you can configure the behavior of your applications as you like. The framework tries to meet the JSR 311 specification, but it doesn't follow every point of the specification, because the purpose is to have a very intuitive library, and some some aspects of the specification are out of the scope of SerfJ.
The UniversalContainer class is an attempt to provide a class which can act in a manner similar to the untyped variables, arrays, and hash-maps found in popular scripting languages such as Perl and PHP. The result is a class that can hold a wide variety of data and meta-data in a very flexible structure. UniversalContainers can hold integers, doubles, booleans, single characters, strings, and wide character strings. UniversalContainers may also be used as associative maps between strings and other UniversalContainers, or as arrays of UniversalContainers. Routines for database access and REST programming are included, including a JSON serialization engine.
VRaptor3 is a fully-fledged Java Web framework focused on fast development and maintainable code. It intends to make RESTful application development easy. A resource corresponds to a business logic annotated with its path and HTTP method. It runs inside DI Containers (Spring or Pico out of the box) and, therefore, enables full integration with them. Also, using Hibernate is easier: its session is automatically injected by VRaptor, so you just have to use it. VRaptor3 is refactor-friendly, especially in its redirecting configuration. It is also nicely extensible.
WSF Staff is Web Service Framework for C++, AJAX, and J2ME that is based on Apache Axis2/C. WSF Staff wraps Apache Axis2/C code into C++, and also provides many additional features: a stateful Web services implementation in C++ with instance support, a synchronous and asynchronous client implementation in C++, AJAX, and J2ME, a service-component architecture implementation, support for RESTful Web services and clients, WSDL support with xsd import and export, J2ME client support (based on ksoap), a flexible and extensible code generator to generate any sort of Web service related source code (not only in C++), security support (users, groups, sessions, ACLs, etc.), and a Web application toolkit (webapp) with widget support.