我想从DWR调用打开一个pdf文件。我正在使用DWR 2.0 请指导我。
答案 0 :(得分:1)
我无法理解你open pdf file
的意思。根据我对您的问题的理解,您可以使用DWR从服务器到客户端获取pdf文件。然后你必须用任何客户端技术显示它。
在DWR网站中,您可以找到dwr.war文件。它包含下载pdf文件的示例。您已将该文件放在任何servlet容器的web-apps文件夹中。然后,您可以通过http://localhost:8080/dwr/
访问教程。
答案 1 :(得分:1)
考虑升级到DWR 3。
在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);
}
爪哇:
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());
}