如何获取PDF内容(通过Spring MVC控制器方法提供)以显示在新窗口中

我是Spring MVC的新手,但其功能给我留下了深刻的印象。

我正在使用3.1.0-RELEASE,并且必须显示PDF以响应form:form提交。

这是我在控制器中编写的(小)代码:

@RequestMapping(value = "new_product", method = RequestMethod.POST, params = "print")

@ResponseBody

public void saveAndShowPDF(ModelMap map, ShippingRequestInfo requestInfo, HttpServletRequest request, HttpServletResponse httpServletResponse) throws IOException {

saveProductChanges(map, requestInfo, request, httpServletResponse);

httpServletResponse.setContentType("application/pdf");

byte[] pdfImage = productService.getPDFImage(requestInfo.getRequestId());

httpServletResponse.getOutputStream().write(pdfImage);

}

此代码将PDF byte []发送回原始窗口。

如何使PDF显示在单独的窗口中,以便仍可以使原始浏览器窗口显示其他内容?最好的方法是使用客户端PDF查看程序(Adobe

Reader,FoxIt等)显示PDF,但我可以在单独的浏览器窗口中显示PDF。

我决定设置Content-Disposition,以便浏览器显示一个保存/打开框,用户可以在其中打开Adobe(而不会丢失浏览器主页面)。

httpServletResponse.setHeader("Content-Disposition","attachment;filename=cool.pdf");

谢谢大家!

回答:

target="_blank"form:form提交表单的标签中指定。

以上是 如何获取PDF内容(通过Spring MVC控制器方法提供)以显示在新窗口中 的全部内容, 来源链接: utcz.com/qa/406275.html

回到顶部