Pregunta

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

Actualizar : Tanto Jersey y Restlet parecen buenas opciones. Probablemente vamos a utilizar Restlet pero vamos a experimentar con ambos.

¿Fue útil?

Solución

Restlet suena como tiene que ofrecer lo que estás buscando:

  • Soporte para el cliente y el servidor (en una API relativamente simétrica)
  • Smart vinculante url
  • tipo mime entendimiento (tipos MIME aceptados dadas, se le pedirán sus recursos para su representación en ese tipo)
  • Compatible con anotaciones JAX-RS (al igual Jersey)

Otros consejos

Jersey es muy fácil para ambos. Para escribir servicios web, utiliza 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

Tome un vistazo a dropwizard también.

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

Este es 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, revisar esta página .

Hay nueva RESTEasy biblioteca. Parece estar bajo rápido desarrollo desde su lanzamiento inicial. No tengo ni idea de si es bueno; está en mi lista de 'comprobar que funciona'.

Se puede echar un vistazo a la ejecución de JAX-RS CXF. Para una lista completa de sus características comprobar el href="http://cxf.apache.org/docs/jax-rs.html" rel="nofollow"> sitio web . La comunidad detrás del proyecto parece ser muy activo (julio de 2013). Una indicación de que es el número de mensajes por día en el CXF listas de correo .

No he utilizado personalmente pero algunos equipos con los que trabajo están utilizando Spring 3 MVC. REST en la primavera de 3: @MVC que parece una visión general buena entrada en el blog. Las características incluyen REST URI "Plantillas", "Negociación de contenido", "HTTP Método de conversión", "apoyo ETag" y más.

Editar : También, vea esta pregunta: ¿alguien puede recomendar un marco web de Java que se basa en MVC y apoya rESTO?

Puedo recomendar Apache guiño, un nuevo marco todavía en el modo de incubación, pero la calidad muy maduro y alto.

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

Se implementa la especificación JAX-RS, que tiene tanto marco de cliente y servidor para el desarrollo REST. Apache está de pie detrás de este proyecto - que es siempre una buena señal (y una buena :-) licencia)

Lo que más me gusta de este marco es la integración intuitiva con la primavera, que es muy útil si desea que su marco de trabajo para configurar y ampliar fácilmente.

ACTUALIZACIÓN: Xydra inquietas no se mantiene ya +++ Si su están utilizando Goolge AppEngine antes de liberar una característica de "reserva instancia", podría considerar Xydra Restless que tiene algunas características, pero las cargas rápido.

Mi favorita es la primavera MVC , usted tiene apoyo a ambos, el cliente y el servidor ... y que cuentan con el apoyo de Android demasiado =)

Por ejemplo, se puede ver un ejemplo de primavera Android aquí

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top