2013-04-02 8 views
6

मैं FileResourceवाडिन 7 में सर्वर से फ़ाइल कैसे डाउनलोड करें?

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

है और मैं बटन पर क्लिक करें द्वारा कंप्यूटर पर ब्राउज़र से इस फ़ाइल को सहेजना चाहते हैं। मैं वैदिन 7 में यह कैसे कर सकता हूं? धन्यवाद

मैं कुछ इस तरह का प्रयास करें:

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

लेकिन मैं खाली के बारे में है: रिक्त पृष्ठ और कुछ नहीं होता ...

+0

एक पिछली पोस्ट मदद कर सकता है http://stackoverflow.com/questions/8169284/vaadin -downloaded-file-has-whole-path-as-file-name – AurA

+0

@AurA मैंने पहले ही इस पोस्ट को देखा है, लेकिन यह मदद नहीं करता है क्योंकि यह पिछले संस्करण vadin के लिए है। Vadin7 ओपन विधि में केवल यूआरएल के रूप में पहला पैरामीटर मिलता है, StreamResource = नहीं ( –

उत्तर

10

मैं अपने समस्या को हल!

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

8

इस समाधान की समस्या में सर्वर से डाउनलोड करने के लिए बहुत आसान है कि है: फ़ाइल नाम और फ़ाइल सामग्री पता होना चाहिए इससे पहले कि आप fd.extend कहते हैं।

आप फ़ाइल नाम का निर्माण और मांग पर सामग्री फ़ाइल, Vaadin विकि पृष्ठ में ट्यूटोरियल देखना चाहते हैं: OnDemandFileDownloader: https://vaadin.com/wiki/-/wiki/Main/Letting%20the%20user%20download%20a%20file

संबंधित मुद्दे