如何在服务器下载文件?

时间:2015-04-29 07:26:35

标签: file vaadin

我想从服务器下载一些文本文件,我在Vaadin中找到了组件'FileDownloader'。

但是,我找不到一些例子。所有示例都使用outputStream。

2 个答案:

答案 0 :(得分:1)

FileDownloader需要Resource并且您的案例有一个子类FileResource(来自文档):

  

FileResources是本地文件系统上的文件或目录。文件和目录通过URI提供给客户端终端,因此必须先注册到URI上下文才能使用它们。资源在创建时自动注册到应用程序

答案 1 :(得分:0)

首先,FileDownloader需要一个FileResource,所以你应该做类似

的事情
FileResource fr = new FileResource(new File("path/to/your/file/on/server"));
FileDownloader fileDownloader = new FileDownloader(fr);

之后,您必须将FileDownload与组件相关联,例如,按钮

Button buttonDownload = new Button("Download", FontAwesome.DOWNLOAD);
fileDownloader.extend(buttonDownload);

这基本上为组件添加了一个扩展,为了保持简单,这是一个独立于组件的实体,可以在客户端和服务器之间轻松实现通信。 当您单击按钮时,扩展程序将激活并开始下载。

根据您的需要调整示例。欢呼声。