Java обрабатывает, используя прокси-сервер, скрывая все - PullRequest
6 голосов
/ 04 марта 2010

Я делаю некоторые веб-сервисы работы на Java 5 на Mac (10.6.2) ....

С тех пор, как ИТ заставили нас начать использовать прокси-сервер, жизнь стала намного сложнее. Java, кажется, вытягивает в настройках прокси-сервера системы, но не исключает список. Это означает, что когда я пытаюсь вызвать веб-сервис для "localhost", java пытается подключиться к прокси-серверу, и мой вызов прерывается. То же самое для моего имени хоста или IP.

Так что для работы в офисе мне нужно зайти в настройки системы и удалить настройки прокси. Тогда все хорошо, кроме того, что я не могу попасть в интернет. Независимо от того, что я делаю в системных настройках со списком исключений, это не влияет на Java.

Я попытался -Djava.net.useSystemProxies = false, и он, похоже, ничего не делал.

спасибо за любую помощь!

1 Ответ

2 голосов
/ 04 марта 2010

Оптимальной ссылкой для конфигурации сетевого прокси в Java 5 является эта Сеть и прокси Java . На этой странице кажется, что Java 5 не обращает внимания на настройки системы из среды хоста. Но даже если предполагается обратить на них внимание, тот факт, что это (по-видимому) не работает для вас, означает, что вы не должны полагаться на это ... по крайней мере, пока.

Чтобы явно настроить Java 5 JVM для использования прокси-сервера по умолчанию для HTTP, необходимо установить системные свойства Java:

  • http.proxyHost - DNS или IP-адрес прокси
  • http.proxyPort - номер порта для прокси
  • http.nonProxyHosts - список хостов или доменов для прямого подключения, разделенных символом «pipe» |.

Если вы также используете HTTPS, вам также необходимо настроить https.proxyHost и https.proxyPort.

И, я думаю, вы должны установить http.proxyHost для http.nonProxyHosts, чтобы иметь какой-либо эффект. Установка последнего сама по себе может не иметь никакого эффекта.

Более подробная информация на странице, указанной выше. Я бы порекомендовал использовать опции "-D" в командном скрипте, который вы используете для запуска приложения. Возможно, вы могли бы заставить этот скрипт извлекать параметры прокси из системных настроек.

Обратите внимание, что в Java 6 и более поздних версиях (снова) изменяется поддержка сетевого прокси, и JVM Java 6 при определенных условиях подхватывает и использует системные настройки из хост-среды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...