2012-10-22 30 views
0

我正在製作一個web應用程序,它基於數據庫中的日期繪製圖形,我使用jfreechart並將圖形保存爲圖像。並試圖在我的jsp頁面上顯示它指定圖像路徑。試圖以戰爭文件格式在我的jsp上顯示圖像

在JSP

我正在得到安寧這

<img src="C:/Program Files/Apache Software Foundation/Tomcat 7.0/webapps/yeargraph.jpg" class="myimageclass" alt="Graph Cannot be Displayed Due to some internal error"/> 

我jfreechart的節目裏面我給

String fileName="C:/Program Files/Apache Software Foundation/Tomcat 7.0/webapps/yeargraph.jpg"; 

保存圖表,我能夠保存圖形和我的JSP文件顯示,如果我跑項目在我的Eclipse Indigo,但如果我將它導出到WAR文件並將WAR文件粘貼到Tomcat/webapps /文件夾,然後運行brwoser「localhost:8080/projetcname /」我可以看到我的項目工作正常但如果我嘗試繪製圖它並沒有在我的jsp頁面中顯示圖像,我是不是在做錯誤的請求LP先謝謝了。

注:基於用戶輸入我的應用程序將通過覆蓋相同的圖像文件,所以即使這個應該被照顧的

+0

不清楚,請嘗試重新解釋一下這個問題,'但是如果我嘗試繪製圖表,它沒有在我的jsp頁面中顯示圖像y是我在做錯誤的事情,請提前ehelp謝謝'不是清除 –

+0

嘗試並給出文件的相對路徑。這將工作 – Sanket

+0

嘗試'' – Jaiwo99

回答

1

您將有各種各樣的問題,當你部署到生產服務器。嘗試不同的方法: - 找到一個您知道在生產中擁有權限的文件夾; - 爲jfreechart指定路徑「[帶權限的文件夾] /charts_temp_folder/yeargraph.jpg」; - 寫一個小的servlet來讀取文件並提供它; - 將你的jsp指向該文件夾;

讓我們知道那是怎麼回事。

+0

goncaloGomes我只有部分你說的會嘗試谷歌搜索實現它謝謝 – HkFreaKuser1673718

0

要通過只是在尋找,你可以試試這個文件名獲得文件的絕對路徑產生不同的圖

String yeargraph= new ClassPathResource("yeargraph.jpg").getFile().getAbsolutePath(); 
+0

它沒有路徑問題,像goncaloGomes說,它與服務器有關,因爲我將projetc轉換爲WAR,我所有的靜態圖像都會壓縮到WAR中,當我嘗試顯示從WAR這個壓縮圖像將顯示的頁面,但在我的情況下,我有WAR文件之外的圖像文件,並且此圖像根據每個請求動態更改,所以我應該像什麼goncaloGomes說,Thansk – HkFreaKuser1673718

+0

和爲此,您將不得不使用此上下文路徑來查找文件路徑並將其用於使用servlet的頁面。 – Sanket

+0

Sanket其實我的時間做項目已經結束了iuu應該提交它星期一,如果可能的話,這可能謝謝 – HkFreaKuser1673718

0

我會推薦Flot進行基於網絡的製圖,即使是在我自己的開放源代碼API XChart上,它更適用於桌面應用程序。 Here是一個HelloWorld類型的示例應用程序,其源代碼演示了我在某一時刻做出的Flot。如果你對獲取包含圖表的JPEG更感興趣,你可以看到how I do it with XChart(獎金例子,頁面底部),你甚至可以做一些非常類似於JFreeChart的東西,而不需要先將jpeg保存到磁盤。