Java 如何在Spring MulitActionController中转换jax-rs核心响应pdf

Java 如何在Spring MulitActionController中转换jax-rs核心响应pdf,java,web-services,rest,spring-mvc,jax-rs,Java,Web Services,Rest,Spring Mvc,Jax Rs,我正在使用RESTWebService使用jax rs客户端下载pdf文档 jax rs将响应作为javax.ws.rs.core.response对象返回 Response.getMetadata()返回映射中的MessageHeader值 Response.getEntity()-将Messagebody作为对象返回 我的Spring MVC Web应用程序正在使用MultiActionController。它只返回ModelandView public ModelAndView getPD

我正在使用RESTWebService使用jax rs客户端下载pdf文档

jax rs将响应作为javax.ws.rs.core.response对象返回

Response.getMetadata()返回映射中的MessageHeader值

Response.getEntity()-将Messagebody作为对象返回

我的Spring MVC Web应用程序正在使用MultiActionController。它只返回ModelandView

public ModelAndView getPDF(final HttpServletRequest request,
        final HttpServletResponse response) throws Exception {
    try {

        javax.ws.rs.core.Response rsResponse = getPDFFromRestWS();

        response.setContentType("application/pdf");
        response.addHeader("Content-Disposition", "attachment; filename=sample.pdf");   

// how to set rsResponse.getEntity Object in HTTPServletResponse

    } catch (Exception e) {
        e.printStackTrace();

    }
    return null;
}   
我的问题是


如何将Jax rs响应传输到HTTPServletResponse。

您想使用
readEntity(TypeYouWant.class)
而不是
getEntity()
。如果只需要
InputStream
,您可以简单地使用
InputStream.class
。然后使用
InputStream
执行您想要的任何操作。很抱歉,我使用的是JDK1.6。ReadEntity在JDK1.7中,Jdk与它有什么关系?@peeskillet-是的,你是对的。我误解了。问题是我正在使用jsr311-api-1.1.1.jar。此jar没有readEntity方法。不管怎样,正如您所说,我对InputStream(InputStream.class.cast(response.getEntity())进行了转换,它可以正常工作。非常感谢Peeskillet您想使用
readEntity(TypeYouWant.class)
而不是
getEntity()
。如果只需要
InputStream
,您可以简单地使用
InputStream.class
。然后使用
InputStream
执行您想要的任何操作。很抱歉,我使用的是JDK1.6。ReadEntity在JDK1.7中,Jdk与它有什么关系?@peeskillet-是的,你是对的。我误解了。问题是我正在使用jsr311-api-1.1.1.jar。此jar没有readEntity方法。不管怎样,正如您所说,我对InputStream(InputStream.class.cast(response.getEntity())进行了转换,它可以正常工作。谢谢你,佩斯基勒