Java 使用Http客户端进行请求,该请求返回内容类型为“的jsp页面”;应用程序/vnd.ms excel“;
我有一个请求处理程序,它返回内容类型为“application/vnd.msexcel”id的jsp页面 我有另一个控制器,我使用HttpClient调用了上面的控制器,但我无法下载该文件 代码如下: 返回内容类型为excel的jsp文件的控制器Java 使用Http客户端进行请求,该请求返回内容类型为“的jsp页面”;应用程序/vnd.ms excel“;,java,spring,spring-mvc,Java,Spring,Spring Mvc,我有一个请求处理程序,它返回内容类型为“application/vnd.msexcel”id的jsp页面 我有另一个控制器,我使用HttpClient调用了上面的控制器,但我无法下载该文件 代码如下: 返回内容类型为excel的jsp文件的控制器 @RequestMapping(value = {"InvoiceGeneration/generatePDF"}, method=RequestMethod.GET) public String generatePDF
@RequestMapping(value = {"InvoiceGeneration/generatePDF"}, method=RequestMethod.GET)
public String generatePDF(Model model)
{
}
使用Http客户端调用上述控制器的控制器
@RequestMapping(value = {"InvoiceGeneration/generateMonthPDF"}, method=RequestMethod.GET)
@ResponseBody
public HttpEntity generateMonthPDF(Model model){
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet getRequest = new HttpGet("http://localhost:8080/BillingInvoice/InvoiceGeneration/generatePDF?invoiceNumber=10");
getRequest.addHeader("Content-Type", "application/vnd.ms-excel");
getRequest.addHeader("Content-Disposition","attachment; filename=\""+"kedar.xls"+"\"");
HttpResponse response = httpClient.execute(getRequest);
return response.getEntity();
}
如何获得excel文件下载响应????提前感谢必须设置以下响应
response.setContentType("application/octet-stream");
or
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-disposition", "inline;filename=" + fileName);
您正在调用的web服务生成PDF?无法将其神奇地转换为Excel文件。你的问题一点也不清楚。我不确定这是否重要,但你可能不想在
generateMonthPDF
中使用@ResponseBody
。此外,您似乎将内容类型
和内容处置
添加到请求中,而不是在生成PDF的响应中。此外,从Apache HTTP客户端返回HttpEntity
也没有用。您应该获得原始字节数组(或输入流)。