我有一个基于 cxf 和骆驼的宁静的网络服务。我正在为我的工作流程使用骆驼路由,它是这样的..
Client --> My Rest Service Class --> Camel Custom Processors --> Bean Bar 的一些方法 Foo
bean FooBar 看起来像这样..
public class Bar {
public MyObject foo(String request, Exchange exchange){
//do some procesing
return instance of MyObject;
}
现在的问题是,每当我对此进行测试时,我都会在客户端收到 200 的响应代码。现在,如果我希望此代码不是 200,我需要将其设置为HttpServletResponse
其他javax.ws.rs.core.Response
对象,但我如何访问此响应对象。
我尝试了以下方法,但没有解决我的问题。
exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE, 202);
exchange.getIn().setHeader(Exchange.HTTP_RESPONSE_CODE, 202);
exchange.setProperty(Exchange.HTTP_RESPONSE_CODE, 202);
Response.status(202).build();