org.openqa.selenium.remote.server.WebDriverServlet имеет жестко заданный тайм-аут сеанса - PullRequest
1 голос
/ 16 июня 2020

В одном из наших проектов мы запускаем длительные задания на удаленных узлах. Эта работа иногда может занять несколько часов. Мы использовали старую версию приложения, которое использует старую версию Selenium WebDriver. И прекрасно работает уже много лет. Теперь мы перешли на новую версию того приложения, которое использует новую версию selenium WebDriver. И он перестает работать. Я просмотрел всю трассировку стека и увидел проблему в классе

org.openqa.selenium.remote.server.WebDriverServlet

Когда вы запускаете любого исполнителя, вы жестко запрограммировали тайм-аут на 10 минут.

try {
  execution.get(10, MINUTES);
} catch (ExecutionException e) {
  resp.reset();
  JeeInterop.execute(new ExceptionHandler(e), req, resp);
} catch (InterruptedException e) {
  logger.log(Level.WARNING, "Unexpectedly interrupted: " + e.getMessage(), e);
  invalidateSession = true;

  Thread.currentThread().interrupt();
} catch (TimeoutException e) {
  invalidateSession = true;
}

Это именно то, что я вижу в нашем новом приложении. Я пытаюсь установить любой тайм-аут, но сессия закрывается через 10 минут.

Не могли бы вы объяснить, почему вы это делаете? Кажется, это ошибка. Знаете ли вы какой-нибудь обходной путь, чтобы заставить его работать?

С уважением

...