Tomcat无法正确处理发送文件的Jersey Rest API调用

时间:2015-12-09 01:08:15

标签: tomcat jersey tomcat8

希望简单的问题。

我有一个Jersey Rest API调用,它使用StreamingOutput返回一个文件,如下所示:

Response.ok(stream).header("Content-Disposition", "attachment; filename=\"" + fileName + "\"").build();

端点是:/ rest / export
方法:POST
主持人:http://www.example.com

我可以使用在Jetty下运行的Rest Client进行LOCALLY(http://localhost/rest/export)测试,它运行正常。在Tomcat中部署时,同一个调用失败。我相信Tomcat中的一些配置会导致问题。我得到了:

  

504网关超时

我的问题是我必须使用哪些配置设置才能允许此休息api通过?我尝试了一大堆,但似乎没有任何工作正常。

默认情况下,我的Tomcat安装没有对任何配置进行任何更改。

感谢您提供任何信息/帮助。

1 个答案:

答案 0 :(得分:0)

事实证明这实际上是由于与StreamingOutput和DeclarativeLinking的某些不兼容。关闭链接解决了问题。但是,切换到InputStream作为响应也将解决问题。