Estoy usando Jersey para implementar una API RESTful que principalmente recupera y sirve datos codificados JSON. Pero tengo algunas situaciones en las que necesito lograr lo siguiente:
- Exporte documentos descargables, como PDF, XLS, ZIP u otros archivos binarios.
- Recupere datos de varias partes, como JSON más un archivo XLS cargado
Tengo un cliente web basado en JQuery de una sola página que crea llamadas AJAX a este servicio web. Por el momento, no envía formularios y usa GET y POST (con un objeto JSON). ¿Debo utilizar una publicación de formulario para enviar datos y un archivo binario adjunto, o puedo crear una solicitud de varias partes con JSON más un archivo binario?
La capa de servicio de mi aplicación crea actualmente un ByteArrayOutputStream cuando genera un archivo PDF. ¿Cuál es la mejor manera de enviar este flujo al cliente a través de Jersey? Creé un MessageBodyWriter, pero no sé cómo usarlo desde un recurso de Jersey. ¿Ese es el enfoque correcto?
He estado mirando las muestras incluidas con Jersey, pero todavía no he encontrado nada que ilustre cómo hacer ninguna de estas cosas. Si importa, estoy usando Jersey con Jackson para hacer Object-> JSON sin el paso XML y realmente no estoy utilizando JAX-RS.
Response
objeto. De esa manera, puede controlar fácilmente el tipo de medio, el código de respuesta HTTP, etc. Avíseme si desea que publique el código.