RESTful производит бинарный файл

Я новичок в использовании CXF и Spring для создания RESTful веб-сервисов.

Вот моя проблема: я хочу создать сервис, который создает "любой" вид файла (может быть изображение, документ, txt или даже pdf), а также XML. Пока что у меня получился вот такой код:

@Path("/download/")
@GET
@Produces({"application/*"})
public CustomXML getFile() throws Exception; 

Я не знаю, с чего именно начать, поэтому, пожалуйста, будьте терпеливы.

EDIT:

Полный код Bryant Luk (спасибо!)

@Path("/download/")
@GET
public javax.ws.rs.core.Response getFile() throws Exception {
    if (/* want the pdf file */) {
        File file = new File("...");
        return Response.ok(file, MediaType.APPLICATION_OCTET_STREAM)
            .header("content-disposition", "attachment; filename =" + file.getName())
            .build(); 
    }

    /* default to xml file */
    return Response.ok(new FileInputStream("custom.xml")).type("application/xml").build();
}
9
задан Marco Aviles 4 October 2011 в 04:36
поделиться