servicio invocar desde consumir consume java web-services rest jersey restlet

invocar - Los marcos más sencillos para implementar servicios web REST de Java



java rest client json (10)

¿Cuáles son los mejores marcos para implementar frameworks REST de cliente y servidor en Java? He estado luchando un poco para encontrar una solución fácil de usar.

Actualización : Tanto Jersey como Restlet parecen buenas opciones. Probablemente usemos Restlet, pero experimentaremos con ambos.


ACTUALIZACIÓN: Xydra Restless ya no se mantiene +++ Si está utilizando Goolge App Engine antes de lanzar una función de "instancia de reserva", puede considerar Xydra Restless, que tiene pocas funciones pero se carga rápidamente.



Mi favorito es Spring MVC , tienes soporte para ambos, cliente y servidor ... Y también tienes soporte para Android =)

Por ejemplo, puedes ver un ejemplo de Spring Android here



Puede echar un vistazo a la implementación de CXF JAX-RS. Para obtener una lista completa de sus funciones, consulte el sitio web de CXF para JAX-RS . La comunidad detrás del proyecto parece estar muy activa (julio de 2013). Una indicación de eso es la cantidad de mensajes por día en las listas de correo de CXF .


Puedo recomendar Apache wink, un nuevo framework aún en modo de incubación, pero muy maduro y de alta calidad.

http://incubator.apache.org/wink/

Implementa la especificación JAX-RS, tiene marco de cliente y servidor para el desarrollo de REST. Apache respalda este proyecto, eso siempre es una buena señal (y una buena licencia :-))

Lo que más me gusta de este framework es la integración intuitiva con Spring, es muy útil si quieres que tu framework se configure y amplíe fácilmente.


Restlet también admite anotaciones en su versión 2.0, tanto en el lado del cliente como en el del servidor. La API de JAX-RS también se admite como una extensión.

Aquí hay un ejemplo simple para el lado del servidor:

public class HelloWorldResource extends ServerResource { @Get public String represent() { return "hello, world"; } }

En el lado del cliente:

// Outputting the content of a Web page new ClientResource("http://www.restlet.org").get().write(System.out);

Para obtener más documentación, consulte esta página .


Jersey es realmente fácil para ambos. Para escribir servicios web, usa anotaciones:

@Path("/helloworld") public class HelloWorldResource { // The Java method will process HTTP GET requests @GET // The Java method will produce content identified by the MIME Media // type "text/plain" @Produces("text/plain") public String helloWorld() { // Return some cliched textual content return "Hello World"; } }

Para un cliente:

Client client = Client.create(); WebResource webResource = client.resource("http://localhost:8080/helloworld"); String s = webResource.get(String.class); System.out.println(s); // prints Hello World


RESTEasy nueva biblioteca RESTEasy JBoss. Parece estar en rápido desarrollo desde su lanzamiento inicial. No tengo idea si es bueno; está en mi lista de ''verifíquelo''.


Restlet parece que debería proporcionar lo que estás buscando:

  • Soporte para cliente y servidor (en una API relativamente simétrica)
  • Enlace de URL inteligente
  • comprensión tipo mime (dados los tipos de mime aceptados, le pedirá a sus recursos su representación en ese tipo)
  • Admite las anotaciones JAX-RS (al igual que Jersey)