Мне нужно позвонить в веб-службу, на ответ которой уходит 40 секунд. Я нахожусь в JBoss-EAP 6.4, и я использую этот код:
IService svc = service.getBasicHttpBindingIService();
[...]
((BindingProvider) svc).getRequestContext().put("com.sun.xml.ws.connect.timeout",timeout)
[...]
svc.processMessage(req);
Когда время ожидания меньше 20000 (20 секунд), я получаю ожидаемое исключение:
HTTP transport error: java.net.SocketTimeoutException: connect timed out
Если время ожидания превышает 20000, я получу еще одно исключение через 20 секунд:
HTTP transport error: java.net.ConnectException: Connection timed out: connect
Итак, я не могу получить ответ от сервера (40 секунд на ответ), я всегда получаю исключение. Какой тайм-аут мне нужно увеличить?