2013-04-02 14 views
6

Ich habe FileResourceWie man Datei vom Server in Vaadin7 herunterlädt?

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

und ich will vom Browser auf dem Computer speichern Sie diese Datei durch Klicken auf die Schaltfläche. Wie kann ich das in Vaadin 7 machen? Dank

Ich versuche, so etwas wie dieses:

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

aber ich habe leer über: leere Seite und nichts passiert ...

+0

ein früherer Post könnte helfen http://stackoverflow.com/questions/8169284/vaadin -downloaded-file-has-whole-path-as-Dateiname – AurA

+0

@AurA Ich habe diesen Beitrag schon gesehen, aber es hilft nicht, weil es für vaadin vorherige Version. In Vaadin7 erhält die Methode open den ersten Parameter nur als URL, nicht StreamResource = ( –

Antwort

10

ich mein Problem lösen!

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); 

Es ist so einfach vom Server zum Download in Vaadin

Verwandte Themen