spring-mvc-download Aktion

Gibt es einige trick, um immer ein SpringMVC benutzerdefinierte Ansicht zu verursachen, die ein herunterladen der Datei im Browser? Ich habe implementiert die render Methode von org.springframework.web.servlet.View aber der code ergibt in meinen Daten, die geschrieben werden auf der Seite als eine blob-Daten eher mit einer download-Aktion starten.

try {

    Document oDoc = (Document) model.get("oDoc");
    out = new PrintWriter(response.getOutputStream());

    response.setContentType("application/vnd.ms-excel");
    response.setHeader("content-disposition", "attachment; filename=file.xls");

    GenerateXLSFile gof = new GenerateXLSFile();

    gof.outputTSVFromDom(out, oDoc);

} catch block here {

  //writes to log here

} finally {

    if (out != null) {
        out.flush();
        out.close();
    }

}

Kenne ich die render-Methode aufgerufen wird, von der server-logs. Ich weiß, die GenerateXLSFile wird erstellt aus den server-logs. Ich weiß, die outputTSVFromDom können ein Dokument und transformiert es die Arbeit von meinem JUnit-test. Er schreibt auch in das server-Protokoll und ergänzt. Die Daten landet in den browser. Die HTTP-Header sieht normal laut firebug. Keine Fehler aus der catch-block werden in den server log.

Was vermisse ich hier?

  • Haben Sie versucht, das hantieren mit den Inhalten geben, um zu sehen, was passiert, wenn Sie es ändern, um etwas anderes (die auch zum Download bereit), wie application/octet-stream???
  • Versuchen out = response.getWriter();
InformationsquelleAutor sal | 2009-09-04
Schreibe einen Kommentar