Webリソースクライアントからプロキシサーバを経由して,外部のネットワークにあるWebリソースを利用できます。
ここでは,プロキシサーバを経由して外部に接続する場合に必要なプロパティの設定について説明します。
プロキシサーバを経由してWebリソースにアクセスするには,JavaVMのプロパティを指定して,プロキシサーバの情報を設定します。プロキシサーバ経由で接続するためのJavaVMのプロパティと指定内容を次の表に示します。なお,JavaVMのシステムプロパティの詳細については,JavaVMのドキュメントを参照してください。
表13-5 プロキシサーバ経由で接続するためのJavaVMのプロパティ
項番 | JavaVMのプロパティ | 指定内容 | 非SSLの場合 | SSLの場合 |
---|---|---|---|---|
1 | http.proxyHost | プロキシサーバのホスト名またはIPアドレスを指定します。 空文字を指定した場合は,プロキシサーバに接続されません。 | ○ | × |
2 | http.proxyPort | プロキシサーバのポート番号を設定します。 http.proxyHostが適切に設定されていた場合に,http.proxyPortに空文字を指定したときは,http.proxyHostに指定されているホストの80番ポートにアクセスされます。 http.proxyHostを指定していない場合は,http.proxyPortを指定しても,プロキシサーバに接続されません。 | △ | × |
3 | https.proxyHost | SSLプロトコルによる接続※で使用するプロキシサーバのホスト名かIPアドレスを設定します。 SSLプロトコルによる接続でプロキシサーバを使用する場合は,必ず設定してください。なお,空文字を指定した場合は,プロキシサーバに接続されません。 | × | ○ |
4 | https.proxyPort | SSLプロトコルによる接続※で使用するプロキシサーバのポート番号を設定します。なお,https.proxyHostが適切に設定されていた場合に,https.proxyPortに空文字を指定したときは,https.proxyHostに指定されているホストの443番ポートにアクセスされます。 https.proxyHostを指定していない場合は,https.proxyPortを設定しても,プロキシサーバに接続されません。 | × | △ |
5 | http.nonProxyHosts | プロキシサーバを利用しないホスト名群を必要に応じて指定します。 このプロパティで指定したホストに接続する場合は,http.proxyHostまたはhttps.proxyHostに指定したプロキシサーバは経由されません。ホストを複数指定する場合は,「|」で区切って設定します。ホスト名とホスト名の間には,「|」以外の文字(空白など)は指定できません。 | △ | △ |
JavaVMのシステムプロパティの設定方法については,「10.10(2) プロパティの設定方法」を参照してください。
匿名でないプロキシサーバを経由してWebリソースにアクセスする場合は,WebリソースクライアントでJ2SE 6.0標準のjava.net.Authenticatorクラスを利用して実装することをお勧めします。詳細についてはJ2SE 6のドキュメントを参照してください。
java.net.Authenticatorクラスを利用した実装例については「10.10(3) JAX-WS機能固有のプロパティを利用しない場合」を参照してください。