Tomcat7 + JFreeChart を使ってグラフを出力するプロジェクトでの話。
実行環境は CentOS6 上で稼働しており、WEB-INF/lib
の下にJFreeChart関連のjarを配置しておけば、ちゃんとグラフが表示されます。
しかし、開発環境として Ubuntu12 + Tomcat7 で実行したところ、JFreeChartの実体を取得するところで、ClassNotFoundException
が発生。前述のとおりJarファイルは WEB-INF/lib
に配置しているので、クラスがないはずがない。
ネットを漁っていると、Tomcatの起動時に -Djava.awt.headless=true
を指定してやると回避できるかもという記事を発見。試してみるとちゃんと動いた。
CentOSではこんなことなかったのに・・・・
Ubuntuは開発環境なので、もちろんデスクトップでGUIで作業しているので、java.awt.headless なんて必要ないはずなのだが・・・・・
Ubuntuはなんだか怪しい。
見た目はかっこいいけど、なんだかメインで使い込む気になれない。