2010-07-27 21 views
10

¿Hay alguna manera de redirigir al usuario agente en un recurso de Jersey?jersey (implementación JSR311) y redirecciones

En Spring MVC existe la sintaxis "redirect:" pero no encontré nada comparable en la clase Viewable de Jersey. El único método que encontré trabajando fue usando HttpServletResponse.sendRedirect().

Respuesta

21

Debe devolver un objeto Response que contiene su código de estado y Location-encabezado. La forma más fácil es usar javax.ws.rs.core.Response.temporaryRedirect(URI).

Al usar Viewable es posible que deba arrojar un WebApplicationException que contenga ese objeto Response.

+0

Una adición. Response.temporaryRedirect (URI) devuelve un estado de 307, que conserva el método de la solicitud inicial. Response.seeOther (URI) devuelve un código de estado de 303, que convertirá un POST en un GET. Entonces, por ejemplo, si PUBLICA sus credenciales de inicio de sesión y lo redirecciona a la página de índice, puede OBTENER la página de índice en lugar de POST'earla. – broadbear