在产生Excel或PDF文件作为响应的REST API中处理异常的正确方法是什么?

时间:2018-11-26 10:27:42

标签: java rest jersey jax-rs

我们如何处理产生下载文件的REST API中的异常或错误?我有一个使用Jersey编写的API,它会生成一个Excel文件,并且具有如下适当的注释:

Response.TrySkipIisCustomErrors = true;

一切正常后,我将使用该文件构建一个响应,状态为@Produces("application/vnd.ms-excel")

但是,发生异常时构建响应的正确方法是什么?响应头应该是什么,并且@Produces批注会引起问题(因为它提到了Excel文件,但错误响应很可能是JSON)?

代码段供参考:

Status.OK

1 个答案:

答案 0 :(得分:1)

根据要求,我的评论为答案:)

这是一篇有关JaxRS中异常处理的文章:https://dennis-xlc.gitbooks.io/restful-java-with-jax-rs-2-0-2rd-edition/en/part1/chapter7/exception_handling.html

这表示您应该能够注册自定义ExceptionMapper,该自定义Of以您需要的方式处理对异常的响应。