2010-03-30 102 views
1

我正在使用Struts2。我需要在網頁中顯示JFreeChart。任何機構能幫助我嗎?使用Struts2在網頁中顯示JFreeChart

編輯:它以二進制格式顯示。

public String execute() throws Exception { 
    System.out.println("Refresh bar Chart"); 
    response.setContentType("image/png"); 
    OutputStream outstream = response.getOutputStream(); 
    try { 
     JFreeChart chart = getChartViewer(); 
     ChartUtilities.writeChartAsPNG(outstream, chart, 500, 300); 
     System.out.println("Created bar Chart"); 
     return SUCCESS; 
    } finally { 
     outstream.close(); 
     response.flushBuffer(); 
    } 
} 
+0

我重新格式化您的評論的代碼;如果不正確,則還原。 – trashgod 2010-03-30 23:40:21

回答

1

您可以將圖表轉換爲圖像並將它們包含在HTML文件中。

+0

public String execute()throws Exception { System.out.println(「Refresh bar Chart」); response.setContentType(「image/png」); OutputStream outstream = response.getOutputStream(); 嘗試JFreeChart chart = getChartViewer();ChartUtilities.writeChartAsPNG(outstream,chart,500,300); System.out.println(「創建的條形圖」); return SUCCESS; } finally { outstream.close(); response.flushBuffer(); } } 它顯示在二進制甲酸鹽 – Kingshuk 2010-03-30 13:23:33

1

JSP/Struts2/whatever-MVC頁面總是以HTML結尾。要以HTML格式顯示圖像,您需要使用<img>元素或任何您通常用來呈現HTML <img>元素的MVC組件。要找到圖片,您需要讓其src屬性指向返回圖片的有效網址。這可以是靜態或動態資源,客戶端看不到差異。

<img src="images/foo.png"> 

在JSP/Servlet環境中,通常的做法是讓一個Servlet在web.xml/images/*使用url-pattern該特定URL聽,讓它根據請求參數或PATHINFO創建/加載/找到圖像並將圖像寫入正確的響應頭集合的響應的輸出流。

基本示例here