2016-07-10 11 views
0

Ich arbeite an einer eigenständigen App, wo Ergebnisse in einem Excel-Blatt exportiert werden. Ich benutze Jxls für den Export. Alles funktioniert in Eclipse, aber das exportierte Glas gibt mir nur ein nicht funktionierendes Blatt. Ist es ein Problem mit dem Ausgabestrom, der nichts schreibt, oder ist es etwas mit dem absoluten Pfad? Ich bin hier ein bisschen verwirrt.Exportieren in Standalone-App funktioniert nicht während der Funktion in Eclipse

Der Export erfolgt mit den erforderlichen Bibliotheken im Glas.

Der Code des ausführenden Teil:

private void exportDataDet(File file) throws ParseException, IOException, ParsePropertyException, InvalidFormatException { 

String path = System.getProperty("user.home") + File.separator + "tempFile"; 
File IdGenreXLS = new File(path + ".xlsx"); 
List<ResultsDetails> detRes = generateResultsDetails(); 

    try(InputStream is = IdGenre.class.getResourceAsStream("/xlsTemplates/IdGenre/IdGenre_20-29-et=12.xlsx")) { 
      try (OutputStream os = new FileOutputStream(IdGenreXLS)) { 
       Context context = new Context(); 
       context.putVar("detRes", detRes); 
       JxlsHelper.getInstance().processTemplate(is, os, context); 
      } 
     } 

Vielen Dank für jede Anregung.

Antwort

0

In Ordnung, die Hypothese, dass nichts auf der Platte geschrieben wurde, war die gute, denn schließlich wurde nichts auf die Festplatte geschrieben. Ein einfaches

os.flush(); 

am Ende macht alles funktioniert. Es gibt nichts dagegen, den Eingabe- und Ausgabestream danach zu schließen.