【发布时间】:2017-08-08 09:10:40
【问题描述】:
这是我正在使用的代码(其他人的项目):
public class MyResponse
public static Response success(String content) {
MyResponse aRsponse = response(content);
return Response.status(Status.OK).entity(aRsponse.getContent()).build();
}
public static MyResponse response(final String content) {
return MyResponse.builder().content(content).build();
}
调用成功方法的 GET/POST 前面有 @Produces(MediaType.TEXT_XML)。
我已经实现了一些逻辑来确定 content 是 XML 还是 JSON,并认为我会将其作为参数传递给成功。所以像:
public static Response success(String content, boolean isJson)
现在我需要设置响应的媒体类型(使用 if/else)。我知道我需要类似于.type(MediaType.TEXT_XML); 的东西,但鉴于我必须使用的代码以及我找到的各种示例和文档,我似乎无法弄清楚这一点。
我们将不胜感激任何帮助或正确方向的指导。谢谢!
【问题讨论】:
-
我尝试将代码更改为:Response.type(MediaType.TEXT_XML).status(Status.OK).entity(aRsponse.getContent()).build();并得到“响应类型的方法类型(字符串)未定义”。
-
只是一个与问题无关的问题。所有方法都是静态的有特殊原因吗?
-
我不确定为什么这些方法是静态的。这就是我必须使用的代码的来源。我会试着弄清楚。