Можно ли управлять именем файла для ответа от службы Jersey Rest?

В настоящее время у меня есть метод в Джерси, который извлекает файл из репозитория содержимого и возвращает его в качестве ответа. Файл может быть в формате jpeg, gif, pdf, docx, html и т.д. (практически все). Однако в настоящее время я не могу понять, как я могу контролировать имя файла, поскольку каждый файл загружается автоматически с именем (download. [Расширение файла], то есть (download.jpg, download.docx, download.pdf). Есть ли способ, которым я могу можно установить имя файла? У меня уже есть это в строке, но я не знаю, как настроить ответ, чтобы он показывал это имя файла вместо значения по умолчанию «скачать».

@GET
@Path("/download/{id}")
public Response downloadContent(@PathParam("id") String id)
{
    String serverUrl = "http://localhost:8080/alfresco/service/cmis";
    String username = "admin";
    String password = "admin";

    Session session = getSession(serverUrl, username, password);

    Document doc = (Document)session.getObject(session.createObjectId(id));

    String filename = doc.getName();

    ResponseBuilder rb = new ResponseBuilderImpl();

    rb.type(doc.getContentStreamMimeType());
    rb.entity(doc.getContentStream().getStream());

    return rb.build();
}
19
задан dallinns 15 March 2011 в 21:12
поделиться