В основном я использую Apache Axis2. Работая с ним, я могу изменить любой тайм-аут, какой захочу, но без названия. Я работаю с Java и Eclipse.
У меня есть проект, в котором мы тестируем некоторые веб-сервисы. На нем я реализую тест с использованием ServiceClient и Options , изменяя свойства времени ожидания, которое у него есть.
Однако я могу изменить 2 из 3 параметров тайм-аута:
- http.connection-manager.timeout (не может изменить его).
- http.connection.timeout (можно изменить).
- http.socket.timeout (можно изменить).
Я пробовал так много способов, пытаясь изменить первый, но я не нашел, как это сделать.
Как вы можете видеть ниже, значение " 600000 " - это поля, которые я мог бы изменить, а значение "30000" - это поле, которого нет (я думаю, 30000 - это значение по умолчанию).
Я собираюсь показать вам часть кода, над которой я работаю, и вывод консоли.
[CODE]
int timeoutMS = 600000;
ServiceClient serviceClient = stub._getServiceClient();
Options options = serviceClient.getOptions();
options.setTimeOutInMilliSeconds(timeoutMS);
options.setProperty(HTTPConstants.SO_TIMEOUT, timeoutMS);
options.setProperty(HTTPConstants.CONNECTION_TIMEOUT, timeoutMS);
[КОНСОЛЬНЫЙ ВЫХОД]
[DEBUG 2019/01/10 16:15:15,236] Set parameter http.connection-manager.timeout = 30000
[DEBUG 2019/01/10 16:15:15,237] Set parameter http.connection.timeout = 600000
[DEBUG 2019/01/10 16:15:15,237] Set parameter http.socket.timeout = 600000
Как вы можете видеть, мои ожидаемые результаты, где три параметра со значением "600000", но первый сохраняет значение по умолчанию.
Заранее спасибо!