[英]FileDownloader at the android it is showing no errors but the download does not start
[英]Vaadin FileDownloader: start download manually
我正在構建一個項目,該項目將從不同的URL下載多個PDF文件,將它們合並為一個文件並下載。
我正在嘗試使用Vaadin的FileDownloader
來實現這一點:
final FileDownloader fileDownloader = new FileDownloader(new FileResource(resultResource.getFile()));
fileDownloader.extend(download);
resultResource
是我要下載的生成的PDF。
現在的問題是生成PDF需要很短的時間,因此有時下載是在生成新文件之前進行的,導致下載了舊文件或空文件。
所以我一直想做的是這樣的:
download.addClickListener(e -> {
try {
// This creates the new PDF
pdfConverter.manipulatePdf(storeNumber.getValue());
fileDownloader.download();
} catch (...) {
...
}
});
但是到目前為止沒有任何成功。 有什么辦法可以這樣嗎? 要禁用“自動”下載並手動觸發它?
您可以嘗試兩種方法
第一種方法是重構UI,以便在進入視圖時開始生成PDF文件,完成后便啟用下載按鈕。 如果可行,您還可以使用進度條之類的其他指標。
在Vaadin 8.4+中,您還可以通過擴展EventTrigger(請參見拉取請求https://github.com/vaadin/framework/pull/10478 )和API規范https://vaadin.com/download/release/8.4/8.4來設置FileDownloader。 .2 / docs / api / com / vaadin / server / EventTrigger.html如果第一種方法不適用於您,則可能會被利用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.