Estou usando Jersey para implementar uma API RESTful que basicamente recupera e fornece dados codificados em JSON. Mas tenho algumas situações em que preciso realizar o seguinte:
- Exporte documentos para download, como PDF, XLS, ZIP ou outros arquivos binários.
- Recupere dados multipartes, como JSON mais um arquivo XLS carregado
Eu tenho um cliente da web baseado em JQuery de página única que cria chamadas AJAX para este serviço da web. No momento, ele não envia formulários e usa GET e POST (com um objeto JSON). Devo utilizar uma postagem de formulário para enviar dados e um arquivo binário anexado ou posso criar uma solicitação multiparte com JSON mais o arquivo binário?
A camada de serviço do meu aplicativo atualmente cria um ByteArrayOutputStream ao gerar um arquivo PDF. Qual é a melhor maneira de enviar esse stream para o cliente via Jersey? Criei um MessageBodyWriter, mas não sei como usá-lo de um recurso de Jersey. Essa é a abordagem certa?
Estive olhando os exemplos incluídos em Jersey, mas ainda não encontrei nada que ilustre como fazer qualquer uma dessas coisas. Se for importante, estou usando Jersey com Jackson para fazer Object-> JSON sem a etapa XML e não estou realmente utilizando JAX-RS.
Response
objeto. Dessa forma, você pode controlar facilmente o tipo de mídia, o código de resposta HTTP, etc. Deixe-me saber se você deseja que eu poste o código.