java(@Context HttpServletResponse)在resteasy中不起作用
使用resteasy框架的Web应用程序
@Path("/do3")
@GET
public void response(@Context HttpServletResponse response) throws IOException{
response.setStatus(202);
}
为什么get/do3返回204而不是202?提前谢谢
PS:(1)我切换到@post方法。它也无法通过get获得预期的代码:202。 (2) 答复。addHeader(“键”、“值”);可以正常工作
# 1 楼答案
RESTEasy正在尽其所能解释您的方法-您没有指定返回类型,因此它会将204(无内容)返回给客户端。void
GET
方法实际上没有多大意义,应该避免使用,或者转换成另一个HTTP动词(如POST)关于主题,这不是设置JAX-RS调用响应状态的正确方法。您应该改为使用ResponseBuilder
当然,您可以将注入的
HttpServletResponse
用于任何其他事情,只要它在调用上下文中有意义: