如何获取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