如何设置不同驼峰端点的响应?

时间:2017-06-06 20:49:09

标签: java spring apache-camel

我有一个servlet路由

Log4net

我正在使用以下代码设置响应。

from("servlet:/?matchOnUriPrefix=true").to("cxfbean:jaxrsServicesproviders=jaxrsProviders")

当有RESTLET路线时 if (fromEndpoint.equals(SERVLET_ENDPOINT)) { String jsonInString = getJSonString(error); exchange.getOut().setBody(jsonInString, HttpServletResponse.class); if (Status.fromStatusCode(error.getResponseCode()) == null) { exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE, Status.FORBIDDEN.getStatusCode()); } else { exchange.getOut().setHeader(Exchange.HTTP_RESPONSE_CODE, error.getResponseCode()); } exchange.getOut().setHeader(Exchange.CONTENT_TYPE, javax.ws.rs.core.MediaType.APPLICATION_JSON); }

我正在使用此代码。


from("restlet:/matchOnUriPrefix=true").to("cxfbean:jaxrsServicesproviders=jaxrsProviders")

现在,如果我尝试使用不同的端点,如spring-ws

if (fromEndpoint.equals(RESTLET_ENDPOINT)) { org.restlet.Response response = ((org.restlet.Response) exchange.getIn().getHeader(RestletConstants.RESTLET_RESPONSE, org.restlet.Response.class)); org.restlet.data.Status status = org.restlet.data.Status.valueOf(error.getResponseCode()); if (status == null) { response.setStatus(org.restlet.data.Status.CLIENT_ERROR_FORBIDDEN); } else { response.setStatus(status); } String jsonInString = getJSonString(error); response.setEntity(jsonInString, MediaType.APPLICATION_JSON); exchange.getOut().setBody(response);

如何设置响应。是否有一种通用的方法来设置所有端点的响应,而不是检查每种端点类型。?

0 个答案:

没有答案