在使用带有java的apache camel版本2.12.4时,我面临一个socketTimeoutException:当我在 30秒内没有收到响应时,读取一次宁静的Web服务时超时。我想在RestletEndpoint类中更改默认的sockeTimeout和connectTimeout值,这是camel jar的一部分。
我在我的骆驼路由器中使用restlet,如下所示
routeDefinition = from(
"restlet:/AccountInfo/getAccountDetails?socketTimeout=900000&connectTimeout=900000&threadMaxIdleTimeMs=900000&restletMethods=POST&restletBinding=#queryStringToHeadersRestletBinding")
.process(getAccountDetailsFromProcessor);
我尝试在参数中设置 socketTimeout 和 connectTimeout 值。
我发现下面是一个骆驼jar类,但不知道如何覆盖这些默认值。
public class RestletEndpoint extends DefaultEndpoint implements HeaderFilterStrategyAware {
private static final int DEFAULT_PORT = 80;
private static final String DEFAULT_PROTOCOL = "http";
private static final String DEFAULT_HOST = "localhost";
private static final int DEFAULT_SOCKET_TIMEOUT = 30000;
private static final int DEFAULT_CONNECT_TIMEOUT = 30000;