- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试为 Camel CXF-RS 组件设置“connectionTimeout”here 它在 3rd 方服务上产生 RESTful 请求。默认的 30000
毫秒太长了。
Exchange exchange = template.send("cxfrs://" + url, new Processor() {
public void process(Exchange exchange) throws Exception {
exchange.setPattern(ExchangePattern.InOut);
Message inMessage = exchange.getIn();
setupDestinationURL(inMessage);
// using the http central client API
inMessage.setHeader(CxfConstants.CAMEL_CXF_RS_USING_HTTP_API, Boolean.TRUE);
// set the Http method
inMessage.setHeader(Exchange.HTTP_METHOD, "PUT");
// set the relative path
inMessage.setHeader(Exchange.HTTP_PATH, url);
// Specify the response class , cxfrs will use InputStream as the response object type
inMessage.setHeader(CxfConstants.CAMEL_CXF_RS_RESPONSE_CLASS, Customer.class);
// set a customer header
inMessage.setHeader("key", "value");
// since we use the Get method, so we don't need to set the message body
inMessage.setBody(null);
}
});
我已经尝试按照许多人的建议将它添加到我们的 application-context
中,但是在通过 HTTPConduit
和 HTTPClientPolicy 调试时看不到它修改默认值
类:
<http-conf:conduit name="*.http-conduit">
<http-conf:client ConnectionTimeout="5000"/>
</http-conf:conduit>
我试过追加
"?httpClientAPI=true&connectionTimeout=5000"
作为 url 字符串的选项。
如有任何帮助或指导,我们将不胜感激。
最佳答案
像您所做的那样在 application-context
中添加 http-conf:conduit
元素是可行的方法。是什么让你说它没有?
建立连接后,后端服务器通常需要很长时间才能响应;在这种情况下,设置 ReceiveTimeout
与 ConnectionTimeout
一样重要。
这是一个消费 RS 请求并调用第三方 RS 服务器的示例 camel Route; ReceiveTimeout 和 ConnectionTimeout 参数按预期工作。
<cxf:rsServer id="rsFrontServer" address="..." serviceClass="..."/>
<cxf:rsClient id="rsBackendClient" address=".../" serviceClass="..."/>
<http-conf:conduit name="*.http-conduit">
<http-conf:client ReceiveTimeout="5000" ConnectionTimeout="5000"/>
</http-conf:conduit>
<camelContext xmlns="http://camel.apache.org/schema/spring">
<route id="front">
<from uri="cxfrs:bean:rsFrontServer"/>
<!-- do stuff -->
<to uri="cxfrs:bean:rsBackendClient"/>
</route>
</camelContext>
关于rest - Camel cxfrs RESTful 客户端/ProducerTemplate ConnectionTimeout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36133777/
我想通过点击 http://someotherhost 上的 REST Web 服务来使用 REST 结果地点。我为它写了一个代理客户端 我想使用 apache CXFRS 客户端访问上述 REST
我正在尝试制作一个 RESTful WS 以使用 CXFRS camel 组件上传文件,我正在尝试通过 getAttachment 方法检索上传的文件,但它始终为空。 这是我的代码: 端点类:Expo
我正在尝试为 Camel CXF-RS 组件设置“connectionTimeout”here 它在 3rd 方服务上产生 RESTful 请求。默认的 30000 毫秒太长了。 Exchange e
我无法让我的 Camel 路由成功地将消息发布到现有的 RESTful Web 服务。我已经尝试了 Camel cxf 包中的所有示例,但它们都没有产生 Web 服务调用(它们是消费者)。我很想为此找
我正在尝试使用 xPath 创建由 REST 有效负载中的内容确定的路由。我已经成功使用基于消息头的路由: ${headers.operationName} == 'createContain
我使用 camel cxfrs 组件构建 REST API。以下是 Camel 路线的片段。 True direct
我正在使用 apache cxf 和 camel 制作 Restful 网络服务。我的配置是这样的: 我将三个服务 bean 公开为服务并映射到不同的 url,路由是这样的:
我在spring+cxf:rsServer的帮助下实现了restful webservice。
我是一名优秀的程序员,十分优秀!