Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
GWT:如何生成pdf保存/打开窗口?_Gwt_Pdf_Pdf Generation_Smartgwt - Fatal编程技术网

GWT:如何生成pdf保存/打开窗口?

GWT:如何生成pdf保存/打开窗口?,gwt,pdf,pdf-generation,smartgwt,Gwt,Pdf,Pdf Generation,Smartgwt,我在应用程序中使用GWT2.4版本。在这个应用程序中,我使用GWT控件(如textbox、textaera)创建了表单 我还创建了表单预览。在预览中我有pdf生成按钮。 现在我想创建与浏览器(Mozilla/chrome)相同的处理pdf链接的行为。 例如,在Mozilla中,单击pdf链接,它会要求保存或在弹出窗口中打开 在调试过程中,我发现了一个可以用来创建pdf的jar名称iText,我还想在这里实现浏览器行为。 请帮帮我。 提前谢谢 将文件内容读入字节数组 然后请求servlet或服务,

我在应用程序中使用GWT2.4版本。在这个应用程序中,我使用GWT控件(如textbox、textaera)创建了表单

我还创建了表单预览。在预览中我有pdf生成按钮。 现在我想创建与浏览器(Mozilla/chrome)相同的处理pdf链接的行为。 例如,在Mozilla中,单击pdf链接,它会要求保存或在弹出窗口中打开

在调试过程中,我发现了一个可以用来创建pdf的jar名称iText,我还想在这里实现浏览器行为。 请帮帮我。
提前谢谢

将文件内容读入字节数组

然后请求servlet或服务,例如:

Window.Location.replace("rest/downloadPdf");
该服务应返回具有正确内容类型的响应:

@Path("downloadPdf")
@GET
@Produces({"application/pdf"})
@Consumes(MediaType.TEXT_PLAIN)
public Response downloadPdf() throws Exception {    
    byte[] bytes = getYourPDFContents();    
    return Response
            .ok(bytes, MediaType.APPLICATION_OCTET_STREAM)
            .header("Content-Disposition", "attachment; filename=\"yourFile.pdf\"")
            .build();
}
然后,浏览器将显示“另存为”对话框

这就是服务的例子,您必须将Jersey库包含到您的项目中,才能使用我上面所写的方法