2009-08-28 15 views
0

JSTLにユーザーがいくつかの番号を入力する更新ページを作成しています。次に、JFreeChartを使用してPNG画像を作成する、パラメータとしてパラメータを渡すJava Beanを呼び出します。私はJSTLを使用してJava BeanのサーバーにPNGファイルを保存する

ImageIO.write(myBufferedImage、 "PNG"、新しいFile( "C:/testChart.pngを"))を使用して、私のハードドライブ上のファイルを直接保存するときに、このすべてが正常に動作します。

ローカルホストでウェブサイトを実行しているときに、画像をtomcatディレクトリに保存して表示することもできます。ただし、このコードがローカルホストではないサーバー上にあると、tomcatディレクトリへの保存は機能しません。このファイルをサーバーに直接書き込むにはどうすればいいですか。私のEclipseプロジェクトのWebContentフォルダ(javaフォルダはsrcフォルダにあります)に書いてください。助けを前にありがとう。

答えて

0

から返されたディレクトリパスに書き込みます。System.getProperty( "java.io.tmpdir");

1

ServletUtilitiesクラスを使用することをお勧めします。これはjava tempdirに保存され、セッションが無効になったときに消去されます。 :)ファイルを表示する別のヒントは、DisplayChartサーブレットを使用して画像を取得することです。 これはこれは、あなたがJSTLを使用して画像を表示する方法を、次にあるweb.xmlに

 <servlet> 
    <servlet-name>DisplayChart</servlet-name> 
    <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class> 
    </servlet> 
    <servlet-mapping> 
     <servlet-name>DisplayChart</servlet-name> 
     <url-pattern>/servlet/DisplayChart</url-pattern> 
    </servlet-mapping> 

を行く:

<img src="<c:url value='/servlet/DisplayChart?'><c:param name='filename' value='${yourFileNameHERE}' /></c:url>" alt=""/> 
関連する問題