2011-10-21 56 views
4

我正在使用wicket框架,並且我已經通過Java代碼創建了一個zip文件,我想要一個鏈接來下載它,我不知道是否有可能或者我應該使由wicket(但不是Java)壓縮文件,然後有鏈接下載。通過wicket下載zip文件

回答

7

看看ZipResourceStream。通過這個類,您可以隨時生成目錄的zip內容,並使用org.apache.wicket.markup.html.link.ResourceLinkResourceStreamResource來鏈接到它。

File file = new File(path); 
IResourceStream resStream = new ZipResourceStream(file); 
ResourceStreamResource resource = new ResourceStreamResource(resStream); 
ResourceLink link = new ResourceLink("link", resource); 
add(link); 

或者,如果你喜歡拉鍊與其他工具的文件,你可以使用DownloadLink

File zipFile = generateZipFile(); 
IModel fileModel = new Model(zipFile); 
add(new DownloadLink("dllink", fileModel); 

如果您更喜歡生成鏈接中的的onClick飛文件,看看在這個問題上:How to use Wicket's DownloadLink with a file generated on the fly?

+0

非常感謝! –