Я понял это примерно через час после того, как отправил этот вопрос. Наш системный администратор обновил запись DNS, к которой пытались подключиться клиенты HTTP. Обновление DNS указывало на сервер приложений, на котором не размещалось веб-приложение, с которым клиент пытался установить связь.
Хотя запись DNS была недействительной, он перезапустил все клиентские службы HTTP, и когда они попытались подключиться к веб-приложению, клиенты получили ответ 404.
Как только я выяснил, что что-то не так с записью DNS, он попросил его исправить IP-адрес, когда мы начали видеть обсуждаемую тему.
Оказывается, когда HTTPClient получает ответ 404, он больше не пытается привязаться к URL-адресу до тех пор, пока клиентская служба не будет перезапущена или не создан новый экземпляр HTTPClient.
Вот мой код клиента ...
CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("UN", "PW"));
HttpClient client = HttpClientBuilder.create().setDefaultCredentialsProvider(credentialsProvider).build();
Может ли кто-нибудь предоставить мне пример кода, чтобы заставить org.apache.http.client.HttpClient проверить ресурс, несмотря на любые предыдущие 404 ответа?