我在后台生成的PDF文档。 我想回到这个使用Spring MVC REST框架。 应MarshallingView和ContentNegotiatingViewResolver是什么样的?
基于样本,我发现,控制器必须以此为回报:
return new ModelAndView(XML_VIEW_NAME, "object",
byteArrayResponseContainingThePDFDocument);
-谢谢。
我在后台生成的PDF文档。 我想回到这个使用Spring MVC REST框架。 应MarshallingView和ContentNegotiatingViewResolver是什么样的?
基于样本,我发现,控制器必须以此为回报:
return new ModelAndView(XML_VIEW_NAME, "object",
byteArrayResponseContainingThePDFDocument);
-谢谢。
你可以定义你的方法采取明确HttpServletRequest
和HttpServletResponse
和流式传输到HttpServletResponse的直接,这种方式:
@RequestMapping(value="/pdfmethod", produces="application/pdf")
public void pdfMethod(HttpServletRequest request, HttpServletResponse response){
response.setContentType("application/pdf");
InputStream inputStream = null;
OutputStream outputStream = null;
try{
inputStream = getInputStreamFromYourPdfFile();
outputStream = response.getOutputStream();
IOUtils.copy(inputStream, outputStream);
}catch(IOException ioException){
//Do something or propagate up..
}finally{
IOUtils.closeQuietly(inputStream);
IOUtils.closeQuietly(outputStream);
}
}