技術更迭真的很快,JFreeChart從0.9.19已經升級到了1.0.13,和struts2以及spring進行了友好的合作,許多api也已經更新。原來需要和servlet緊密綁定,現在通過struts2的配置文件,即可輕鬆搞定。(說是輕鬆,其實也費了很大事。)
需要在struts.xml文件裏增添以下幾段代碼,讓struts2能夠使用jfreechart-plugin處理jfreechart到web頁面上。
<result-types>
<result-type name="chart" class="org.apache.struts2.dispatcher.ChartResult"></result-type>
</result-types>
<action name="listLineChart" method="lineChart" class="action.FtpStatisticAction">
<result type="chart">
<param name="height">500</param>
<param name="width">800</param>
</result>
</action>
這裏要注意,之前參照網上的例子,其中多了一行<param name="param">chart</param> ,沒理解這是幹什麼用的,但tomcat始終報錯,說是找不到setChart方法,去除之後就好了。
另外,我是從老的api升級而來,許多調用變化很大,如果有錯,需要耐心調試,確保調用無錯後,再覈對配置文件。基本可以讓圖片正常顯示出來。