サーブレットを使用してJFreeChartを使用してグラフを動的に生成し、続いてimgタグを使用してその画像をJSPに含める例をいくつか見てきました。例えば:
<img src="/MyChartServlet" width="400" height="300" border="0" alt="" />
JFreeChartを使用して画像を生成するサーブレットはうまく機能し、次のようにブラウザで直接呼び出すと画像を表示できます。
http:/myurl/MyChartServlet?id=274
問題は、JSPが画像を表示しないことです。実際、JSPはサーブレットを呼び出していません。サーブレットが呼び出されたときに表示されるデバッグエントリがログに表示されないため、これを知っています。
サーブレットでは、JFreeChartChartUtilities.writeChartAsJPEG()
メソッドを使用して、応答の出力ストリームに画像を書き込みます。これは、画像をディスクに書き込みたくないためです。前述のように、サーブレットは直接呼び出されたときに正常に機能します。
私は何が欠けていますか?それとも、これを行うためのより良い方法はありますか?たぶん、単純な古いオブジェクトでグラフを生成でき、それをJSPに含めることができますか?どんな助けでもいただければ幸いです。