Кроме того, вероятно, есть некоторые другие интересные различия между вашей системой Windows и сервером Linux. Вы подключаетесь к тому же URL? Сетевой конфиг / брандмауэр похож? Возможно, вы можете попробовать запустить Linux локально, чтобы сузить его. Я не ожидаю, что это различие между Java на вдовах и Linux, которое является причиной этого; если вы не используете разные версии и одна из них имеет ошибку.

инающий, когда дело доходит до HTTP-соединений. В настоящее время я работаю с SAAJ api, чтобы иметь мой клиент на основе мыла, где для обработки таймаутов я в конечном итоге использовал URLStreamHandler для свойств HTTP-соединения с конечными точками.

Проблема в том, что этот тайм-аут работает для моей системы на базе Windows, однако он не работает для сервера Linux, на котором он будет запущен.

ниже приведен код для извлечения конечной точки с заданными свойствами. Это HTTP-соединение POST.

    URL endpoint = new URL (null, url, new URLStreamHandler () {
        protected URLConnection openConnection (URL url) throws IOException {
            // The url is the parent of this stream handler, so must create clone
            URL clone = new URL (url.toString ());
            HttpURLConnection connection = (HttpURLConnection) clone.openConnection();
            connection.setRequestProperty("Content-Type",
                    "text/xml");

            connection.setRequestProperty("Accept",
                    "application/soap+xml, text/*");

            // If we cast to HttpURLConnection, we can set redirects
            // connection.setInstanceFollowRedirects (false);
            connection.setDoOutput(true);
            connection.setConnectTimeout(3 * 1000);
            connection.setReadTimeout(3 * 1000);
            return connection;

для части SAAJ API ниже приведена довольно простая реализация

    SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory
            .newInstance();
    soapConnection = soapConnectionFactory.createConnection();

    is = new ByteArrayInputStream(command.getBytes());

    SOAPMessage request = MessageFactory.newInstance(
            SOAPConstants.SOAP_1_1_PROTOCOL).createMessage(
                    new MimeHeaders(), is);

    MimeHeaders headers = request.getMimeHeaders();
    headers.addHeader("Content-Type", "text/xml");

    request.saveChanges();

    ByteArrayOutputStream out = new ByteArrayOutputStream();
    request.writeTo(out);

    soapResponse = soapConnection.call(request, endpoint);

Это то, что системные свойства будут влиять на время ожидания соединения или чтения. Если так, пожалуйста, дайте мне знать, что может вызвать такое поведение.