Quantcast
Channel: SmartClient Forums
Viewing all articles
Browse latest Browse all 4756

Proper method for downloading a PDF

$
0
0
I have an app that generates a PDF file on the server side. I would like it to present a download dialog so the user can save it. Currently, it just ends up getting displayed inline, replacing the page that requested it. How can I force a save dialog to show?



Code:

DataSource ds = getMyDS();
DSRequest dsRequest = new DSRequest(DSOperationType.CUSTOM,"MethodName");
dsRequest.setExportResults(true);
dsRequest.setDownloadToNewWindow(true);

dsRequest.setTransport(RPCTransport.HIDDENFRAME );
dsRequest.setIgnoreTimeout(true);
dsRequest.setShowPrompt(false);


ds.exportData(chartQuert, dsRequest, new DSCallback() {
    public void execute(DSResponse dsResponse, Object o,DSRequest dsRequest) {

        }
});

and on the server
Code:

req.getRPCManager().doCustomResponse();
HttpServletResponse servletResponse = req.rpc.getContext().response;
servletResponse.setContentType("application/pdf");
servletResponse.setHeader("Content-Disposition", "inline; filename=\""+ fileName + ".pdf\"");
OutputStream os = servletResponse.getOutputStream();
GEN and Write PDF
os.flush();
os.close();


Viewing all articles
Browse latest Browse all 4756

Trending Articles