Tabla de Contenidos

Guía de anotaciones JAX-RS 1.1 para servicios web REST

PEDRO DELGADO YARZA 2014/02/27 12:55

A continuación resumimos las anotaciones más relevantes en REST, no obstante para acceder a la documentación más detallada al respecto puede hacerse en el enlace Creating a RESTful Root Resource Class

Anotaciones generales

@Path: Indica una URL relativa donde estará la clase Java correspondiente al servicio que expone. Esta variable puede contener variables embebidas para dar riqueza a la expresión. Puede ir situada tanto en la cabecera de la clase Java que expone el servicio como en la cabecera de los métodos de la misma para indicar las operaciones.

Anotaciones en métodos

@GET: Indica que la petición es una solicitud GET, similar a las HTTP.

@POST: Indica que la petición es una solicitud POST, simliar a las HTTP.

@PUT: Similar a POST con la diferencia que, mientras que post no decide sobre los recursos que se generan, simplemente interactúa con ellos y es el servidor quien decide. PUT sí que especifica características de cómo han de ser los recursos.

@DELETE: Indica la eliminación de un recurso concreto, similar a las peticiones HTTP.

@HEAD: Similar a GET salvo que no exige un mensaje de respuesta.

@Produces: Especifica los tipos de medios MIME(MediaType) que el método expone como de respuesta.

@Consumes: Especifica los tipos de medios MIME(MediaType) de petición que el método acepta de entrada.

Anotaciones en los parámetros de los métodos

@FormParam: Utilizado para ligar parámetros de un formulario HTML con variables del servicio REST.

@PathParam: Utilizado para ligar parámetros de una petición clasica REST con las variables del servicio.

@QueryParam: Utilizado para ligar parámetros que vengan a través de una petición clásica GET.

@MatrixParam: Utilizado para ligar parámetros que vengan dentro de una matriz HTTP.

@HeaderParam: Utilizado para ligar parámetros que vengan de un valor de cabecera HTTP.

@CookieParam: Utilizado para ligar parámetros que vengan dentro de o a un valor de cookie.

@DefaultValue Especifica un valor por defecto.

Bibliografia y referencias