1

DWR 呼び出しから pdf ファイルを開きたい。DWR 2.0 を使用しています。ガイドしてください。

4

2 に答える 2

1

DWR3へのアップグレードを検討してください。

DWR3には、FileTransferオブジェクトがあります...

HTML:

<form action="downloadFile.do">
  <div id="buttons">
    <input type="button" value="Back" id="mapback"    onClick="javascript:back();" class="Back" />
    <input type="button" value="SavePDF" id="SavePDF" onclick="return downloadPdfFile();" class="saveToPdfButton" />
    <input type="submit" value="Continue" id="continue" class="continue" />

  </div>
</form>

JavaScript:

function downloadPdfFile() {
  dwr.engine.setTimeout(59000);

  var callMetaData = {
  callback : downloadPdfCallback,
  exceptionHandler : hideLoadingAndSwitchOnSavePDFButton,
  errorHandler : hideLoadingAndSwitchOnSavePDFButton,
  preHook : showLoading,
  postHook : hideLoading
};

DWRAction.downloadPdfFile(callMetaData);

return false;
}

function downloadPdfCallback(data) {
   dwr.engine.openInDownload(data);
}

Java:

File pdfFile = new File(pdfFilename);
try {
      InputStream is = new BufferedInputStream(new FileInputStream(pdfFile));
       dwrPdfFile = new FileTransfer(pdfFile.getName(), "application/pdf", is);
     } catch (FileNotFoundException e) {
       LOGGER.error("Unable to find PDF file \'{}\'", pdfFile.getAbsoluteFile());
     } 
于 2012-08-22T09:26:08.660 に答える
1

とはどういう意味なのか理解できませんopen pdf file。あなたの質問に対する私の理解によると、DWRを使用してサーバーからクライアント側にpdfファイルを取得できます。次に、クライアント側の手法で表示する必要があります。

DWR Web サイトで、dwr.war ファイルを見つけることができます。PDFファイルをダウンロードする例が含まれています。そのファイルを任意のサーブレット コンテナーの web-apps フォルダーに配置しました。その後、 からチュートリアルにアクセスできますhttp://localhost:8080/dwr/

于 2010-11-12T19:42:49.863 に答える