我正在尝试在 JAX-RS Web 服务中返回图像。通过返回,我能够成功地完成这项工作,FileInputStream
但我宁愿避免File
为每个请求创建一个。
我正在使用 Apache CXF 和 Jackson(所有其他资源方法都生成 application/json)。
代码如下所示:
@GET
@Produces("image/png")
public Response getQrCode(@QueryParam("qrtext") String qrtext) {
ByteArrayOutputStream out = QRCode.from(qrtext).to(ImageType.PNG).stream();
return Response.ok(out).build();
}
不幸的是,这会产生可怕的:
org.apache.cxf.jaxrs.interceptor.JAXRSOutInterceptor:376 - 没有为响应类 ByteArrayOutputStream 找到消息正文编写器。
这是一个类似帖子的链接,但它没有提到我遇到的“没有消息正文作者”问题。
我将不胜感激有关如何处理此问题的任何想法。谢谢!