我有一個基於cxf和camel的寧靜web服務。我使用駱駝路由我的工作流程是這樣的..Apache Camel和CXF:我如何從bean發送HTTP狀態代碼
客戶端 - >我的休息服務類 - >駱駝定製處理器 - >豆的一些方法foo酒吧
豆子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();