1

私のjspページで、スキャンしたドキュメントを表示/ダウンロードするためのリンクを1つ提供しました。

そのリンクをクリックした後、ドキュメントを適切に表示できますが、そのドキュメントを開く前に、開く、保存する、またはキャンセルするオプションをjspに促したいです。

応答オブジェクトを変更する必要がありますか、それともブラウザーの設定が原因で発生していますか..??

ありがとう.....!!!

私は次のようにコントローラークラスを書きました:

public void fileUploadOption(HttpServletRequest request,HttpServletResponse response) {

        try {
              // get your file as InputStream
              InputStream is = new FileInputStream(new File(\\..file..\\));


              IOUtils.copy(is, response.getOutputStream());

              response.flushBuffer();

            } catch (IOException ex) {

              throw new RuntimeException("IOError writing file to output stream");
            }

    }
4

1 に答える 1

5

Content-Dispositionヘッダーをに設定する必要がありますattachmentこれにより、[名前を付けて保存] ダイアログが強制的に表示されます。

応答本文にバイトを書き込む前に、次の行を追加します。

String filename = file.getName();
response.setHeader("Content-Disposition", "attachment;filename=\"" + filename + "\"");

ところで、「アップロード」はこの文脈では間違った用語です。そのメソッドの名前をfileSendOptionor sendFileor something に変更します。

于 2012-04-26T13:52:25.777 に答える