Apache Camel 损坏了 http 响应
Apache Camel corrupted http response
我正在使用 Camel route http requests
。客户端在 servlet
端点到达我的 Camel 路由器,提供路由请求所需的信息,然后我查找数据库以解析端点。请求路由正确但我得到的响应似乎已损坏(我正在从 Rest 客户端进行调用),这里是损坏的响应:
如果我调用 destination 端点而不从 camel 传递它 returns 正确的响应:
我还检查了响应是否使 destination 端点未损坏。
这是我的骆驼 configuration classes
:
@Singleton
@Startup
public class CamelStartupBean {
@PostConstruct
public void init() {
CamelContext camelContext = new DefaultCamelContext();
camelContext.addRoutes(new CamelRouteConfiguration());
camelContext.start();
}
static class CamelRouteConfiguration extends RouteBuilder {
@Override
public void configure() {
from("servlet:callService?matchOnUriPrefix=true")
.routeId("callService")
.recipientList(method(CallServiceConfiguration.class, "resolveServiceRoute"));
}
}
static class CallServiceConfiguration {
public String resolveServiceRoute(Exchange exchange) {
String route;
// lookup the database to find a route ...
route = "http://demo.apps.closhlab.osh.local/rest/DemoService?bridgeEndpoint=true";
return route;
}
}
}
我正在使用 Camel 3.9.0
并且我的应用程序部署在 Docker 映像上 jboss/wildfly:15.0.0.Final
。
有什么想法吗?谢谢。
升级到 Camel 3.11.0 解决了这个问题。
我正在使用 Camel route http requests
。客户端在 servlet
端点到达我的 Camel 路由器,提供路由请求所需的信息,然后我查找数据库以解析端点。请求路由正确但我得到的响应似乎已损坏(我正在从 Rest 客户端进行调用),这里是损坏的响应:
如果我调用 destination 端点而不从 camel 传递它 returns 正确的响应:
我还检查了响应是否使 destination 端点未损坏。
这是我的骆驼 configuration classes
:
@Singleton
@Startup
public class CamelStartupBean {
@PostConstruct
public void init() {
CamelContext camelContext = new DefaultCamelContext();
camelContext.addRoutes(new CamelRouteConfiguration());
camelContext.start();
}
static class CamelRouteConfiguration extends RouteBuilder {
@Override
public void configure() {
from("servlet:callService?matchOnUriPrefix=true")
.routeId("callService")
.recipientList(method(CallServiceConfiguration.class, "resolveServiceRoute"));
}
}
static class CallServiceConfiguration {
public String resolveServiceRoute(Exchange exchange) {
String route;
// lookup the database to find a route ...
route = "http://demo.apps.closhlab.osh.local/rest/DemoService?bridgeEndpoint=true";
return route;
}
}
}
我正在使用 Camel 3.9.0
并且我的应用程序部署在 Docker 映像上 jboss/wildfly:15.0.0.Final
。
有什么想法吗?谢谢。
升级到 Camel 3.11.0 解决了这个问题。