Как скачать файл с сервера в Vaadin7?

У меня есть FileResource

FileResource curResource = new FileResource(new File(basepath +
                                "/WEB-INF/docs/"+path+".pdf"));

и я хочу сохранить этот файл из браузера на компьютер, нажмите кнопку. Как я могу сделать это в Vaadin 7? Спасибо

Я пробую что-то вроде этого:

ExternalResource resource = new ExternalResource(basepath +
                                "/WEB-INF/icons/"+"block_16.png");
Page.getCurrent().open(resource.getURL(),"Download",true);

но у меня пуст о:пустая страница и ничего не происходит...

2 ответов


Я решаю свою проблему!

private String basepath = VaadinService.getCurrent()
            .getBaseDirectory().getAbsolutePath();
private Button saveExcel = new Button();
Resource res = new FileResource(new File(basepath +
                "/WEB-INF/docs/settings.xlsx"));
FileDownloader fd = new FileDownloader(res);
fd.extend(saveExcel);

это так легко скачать с сервера в Vaadin


проблема этого решения заключается в том, что: имя файла и содержимое файла должны быть известны перед вызовом fd.расширять.

Если вы хотите создать имя файла и содержимое файла по требованию, см. учебник на странице Vaadin wiki:Позволяя Пользователю Загрузить Файл