2010-03-03 11 views
6

robię jakąś pracę na wyżej wymienioną internetowych Java 5 na Mac (10.6.2) ....Java przetwarza za pomocą serwera proxy, niwecząc wszystko

odkąd się nam rozpocząć korzystanie z serwera proxy, życie stał się o wiele trudniejszy. Wygląda na to, że Java pobiera systemowe ustawienia serwera proxy, ale nie listę wykluczeń. Oznacza to, że gdy próbuję wywołać usługę sieciową dla "localhost", java próbuje zamiast tego serwera proxy, a moje wezwanie wysadza się w powietrze. To samo dotyczy mojej nazwy hosta lub adresu IP.

Aby móc pracować w biurze, muszę przejść do Ustawień systemu i usunąć konfigurację proxy. To wszystko jest dobre, z wyjątkiem tego, że nie mogę trafić do internetu. Bez względu na to, co robię w ustawieniach systemu z listą wykluczeń, nie ma to wpływu na Javę.

Próbowałem -Djava.net.useSystemProxies = false i nie wydaje się nic.

dzięki za pomoc!

+0

java.net.useSystemProxies jest domyślnie fałszywy (o ile wiem). Czy w ogóle ustawiasz ją na true? – Yishai

Odpowiedz

2

Ostatecznym numerem referencyjnym konfiguracji sieciowej proxy w języku Java 5 jest ta strona Java Networking and Proxies. Z tej strony wydaje się, że Java 5 nie zwraca uwagi na ustawienia systemowe ze środowiska hosta. Ale nawet jeśli ma na nie zwrócić uwagę, fakt, że to (najwyraźniej) nie działa dla ciebie oznacza, że ​​nie powinieneś polegać na tym ... przynajmniej na razie.

Aby wyraźnie skonfigurowania Java 5 JVM użyć domyślnego serwera proxy dla HTTP trzeba ustawić właściwości systemowe Java:

  • http.proxyHost - adres DNS lub IP serwera proxy
  • http.proxyPort - numer portu serwera proxy
  • http.nonProxyHosts - listę hostów lub domen, do których należy się bezpośrednio połączyć, oddzielone znakiem "potoku" |.

Jeśli używasz również protokołu HTTPS, musisz również skonfigurować https.proxyHost i https.proxyPort.

I, myślę, że musisz ustawić http.proxyHost dla http.nonProxyHosts, aby uzyskać jakikolwiek efekt. Samo ustawienie tego ostatniego może nie przynieść efektu.

Więcej szczegółów znajduje się na stronie powyżej. Zalecam użycie opcji "-D" w skrypcie poleceń, którego używasz do uruchamiania aplikacji. Może mógłbyś spowodować, że ten skrypt ściągnie parametry proxy z ustawień systemu.

Należy pamiętać, że w Javie 6 i nowszych, obsługa proxy sieci zmienia się (ponownie), a Java 6 JVM pobiera w określonych warunkach i pobiera ustawienia systemowe ze środowiska hosta.

Powiązane problemy