动态更改RESTEasy服务返回类型

我可以在RESTEasy服务中更改@Produces注释参数的值吗?
我给出的任务是将多种格式报告集成到现有的报告系统中。 因此动态更改@Produces注释参数会对我有所帮助。
提前致谢!

让你的方法返回一个Response对象并尝试这样的事情;

 int status = 200; String type = MediaType.APPLICATION_XML; String response = "world"; return Response.status(status).type(type).entity(response).build(); 

我认为响应中的类型将覆盖您注释的内容,但我还没有对其进行测试。

您可以在@Produces中指定多个条目。 您的请求应该提到您想要的格式(作为mime类型)作为结果。

例:

 @Produces({ MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON })