2011-11-10 6 views
0

私のWebサービスがプロキシでいくつかのWebページを取得するために起こっている:フェッチWebページ

System.setProperty("java.net.useSystemProxies", "true"); 
List<Proxy> proxies = ProxySelector.getDefault().select(new URI(url)); 

URLConnection connection = null; 
Iterator<Proxy> iter = proxies.iterator(); 
do { 
    Proxy proxy = iter.next(); 
    System.out.println(proxy); 
    try { 
     connection = new URL(url).openConnection(proxy); 
    } catch (IOException e) { 
     if (!iter.hasNext()) throw (e); 
    } 
} while (connection == null); 

ただし、デフォルトのProxySelectorは常に直接接続(プロキシなし)を返します。 IEのプロキシ設定を確認し、Javaコントロールパネルのプロキシ設定をシステムブラウザ設定に設定しました。

WebサービスはTomcatサーバーによって呼び出されるため、Tomcatサーバーでいくつかの設定を行う必要がありますか?

答えて

0

このリンクをご覧ください。

http://download.oracle.com/javase/6/docs/technotes/guides/net/proxies.html

  • はhttp.proxyHost:プロキシサーバーのホスト名
  • http.proxyPort:ポート番号、80
  • http.nonProxyHostsであるデフォルト値:ホストのリストプロキシをバイパスして直接到達する必要があります。これは '|'で区切られたパターンのリストです。パターンは、ワイルドカードの場合は「*」で始まるか、終わります。これらのパターンに一致するホストには、プロキシ経由ではなく直接接続で到達します。
+0

しかし、私はプロキシ設定を手動で指定したくありません。システムプロキシ設定を自動的に検出して使用するだけで十分です。 – KiKi