Ich versuche, den 'connectionTimeout' für eine Camel CXF-RS-Komponente here zu setzen, die eine RESTful-Anfragen auf einem 3rd-Party-Service produziert. Der Standardwert 30000
Millisekunden ist zu lang.Camel cxfrs RESTful client/ProducerTemplate ConnectionTimeout
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);
}
});
habe ich versucht, diese zu unseren application-context
so viele haben vorgeschlagen, aber kann es nicht sehen, die Standardwerte zu modifizieren, wenn die Debugging durch HTTPConduit
und HTTPClientPolicy
Klassen:
<http-conf:conduit name="*.http-conduit">
<http-conf:client ConnectionTimeout="5000"/>
</http-conf:conduit>
und ich habe versucht
Anfügen"?httpClientAPI=true&connectionTimeout=5000"
als Optionen für die URL-Zeichenfolge.
Jede Hilfe oder Anleitung wäre sehr willkommen.