2011-02-01 18 views
0

私はアプレットを使用していて、jcchartでグラフを作成しています。今度はグラフが描画されるときに、このグラフをGIFとしてエクスポートしたい場合、このグラフはサーバーディレクトリのように保存する必要があります。どのように私はそれを行うことができます誰も助けることができますか?グラフをサーバー上の画像として保存する方法

答えて

2

実際には、HttpURLConnectionクラスを使用してHTTPを使用して、Webサーバー上で実行されているサーブレットまたはPHPスクリプトにデータをPOSTするのはかなり簡単です。 HttpURLConnectionの使い方を示すhereの例があります。別のコンテンツタイプヘッダー(image/png)を設定し、バイナリストリームを使用してデータを出力する必要がありますが、基本はすべてそこにあります。

+0

に送信する必要があります私はスクリプト言語として古典的なASPを使用しているサーバー側。ので、私は以下のコードを使用するByteArrayOutputStream baos = new ByteArrayOutputStream(); \t \t \t \t \t \t ImageIO.write(myImage、 "png"、baos); バイト[] imgByte = baos.toByteArray(); myImageはBufferedImageのオブジェクトです。このバイト配列をASPページに渡すと、ASPでイメージファイルを作成できます。または私は他の何かをしなければならないでしょう。私に助けてください、これは初めてです –

+0

これだけですが、ByteArrayOutputStreamへの書き込みはありません.HttpURLConnectionから返された出力ストリームに直接書き込んでください。 –

+0

aspで画像をアップロードできるようにいくつかのaspコードを教えてください。私の問題は、要求パラメータでイメージ名を見つけることです。このようにしてイメージを送信すると、aspクラシックがファイルをアップロードする方法 –

2

グラフはサーバーによって生成され、(クライアント側のアプレットではなく)何らかの要求ハンドラを介してクライアントに送信されたものと想定しています。この場合、そのリクエストハンドラを変更して追加のリクエストパラメータ(たとえば "saveImage")を探して、肯定的であればハンドラをトリガして、ローカルファイルシステム上のファイルに保存するようにトリガします(またはそれに加えて)コンテンツを直接返すことができます。

たとえば、チャートオブジェクトをPNG形式でエクスポートした後は、たとえば、FileOutputStreamを使用して、そのバイトストリームをローカルファイルに書き込むことができます。

+0

実際にグラフ化するためのデータは、サーバーからaspによって取得されますが、クライアントでアプレットによって作成されるため、グラフのイメージをサーバーに送信するにはどうすればよいですか。私は、ローカルファイルシステム上のイメージを作成する鍬を知っているが、私はそれをサーバーディレクトリ –

関連する問題