2012-06-28 38 views

回答

2

您可以考慮使用Apache POI在Microsoft word中輸出您的報告。您也可以參考this link,瞭解它如何使用Apache POI完成。一個基本的想法是,在擴展Action的類中,使用HttpServletResponse輸出文件。例如:

String filename = "words.doc"; 
p_response.setContentType("application/msword"); 
p_response.setHeader("Content-disposition", 
"Attachment; filename=" + filename); 

祝你好運!

+0

是的謝謝你,我做到了。 –

+0

歡迎您,太棒了! – Jasonw

1

將報告寫成簡單明瞭的HTML。然後,謊言到瀏覽器:

response.setHeader("Content-Disposition", "attachment; filename=\"" 
      + reportName + ".doc\""); 
response.setContentType("application/msword"); 

report.writeTo(response.getOutputStream()); // Actually writes HTML, not doc. 

瀏覽器會認爲它是一個Word文檔,並詢問用戶他們想如何打開它(即與MS Word或OpenOffice)。 MS Word和OpenOffice都很聰明,不會被.doc文件的HTML內容所迷惑,並會打開它供用戶編輯。

如果報告只能打印出來,我建議使用JasperReports導出PDF,或者只是給用戶打印一個純HTML頁面。