1

jsfプロジェクトにファイルをダウンロードしたい。Bean側では、DataHandlerのオブジェクトを取得しています。何度も検索してみましたが、関連するものは見つかりませんでした。datahandlerオブジェクトを介してファイルをダウンロードするにはどうすればよいですか?

DataHandler src = attachment.getAttachment();

ByteArrayOutputStream output = new ByteArrayOutputStream();
src.writeTo(output);
FacesContext facesContext = FacesContext.getCurrentInstance();
ExternalContext externalContext = facesContext.getExternalContext();
externalContext.setResponseHeader("Content-Type", src.getContentType());            
externalContext.setResponseHeader("Content-Disposition", "attachment;filename=sachin.jpg");
externalContext.getResponseOutputStream().write(output.toByteArray());
facesContext.responseComplete();        

そして、プロセス全体を詳細に説明するファイルのダウンロードとアップロードに関する優れたチュートリアルについて誰かが知っているなら、私にとっては素晴らしいことです。

4

1 に答える 1

0

私の友人の一人が私のためにこれを解決します。実際、liferay環境が問題でした。以前、ポートレット応答を設定していました。そこで彼は、ダウンロード用に別のサーブレットを作成しました。

于 2013-01-22T06:15:20.363 に答える