システムプロパティでプロキシを指定する正しい方法とは?
※元々は1つのエントリだったのですが、Grapeの話とはあまり関係ない方向に進んだので、エントリを分離してみました。
-DproxySet=trueって必要?
なんか色々ぐぐってみると、Javaでプロキシ指定する場合はproxySet=yes(or true)というプロパティも必要だ、という記述があるんだけど、指定しなくても動くし、noとかfalseとか指定してもプロキシ経由でアクセスできてるっぽい。
このプロパティって必要なんでしょうかね?
[追記]http.proxyXxxx ? proxyXxxx?
あれ?
よく見ると、http.proxyHost というような指定をしているサンプルと、先頭のhttp. がない、proxyHost という指定をしているサンプルがありますね・・。
Java ネットワークとプロキシ をみても、http.proxyHostという指定の方が主力のようだ。
なんで、proxyHostでうごくんだろ。
あまり考えたことなかったなぁ。
[追記] 途中経過
ちょこっと動作確認してみたところ、以下のような感じでした。
- proxyHostとhttp.proxyHostのどちらが指定されているかで、無印系とhttp系のどちらの系統を採用するかが判別されてる雰囲気
- http.proxyHostがある場合は、http.proxyPortが使われている (proxyPortは無視)
- proxyHostがある場合は、proxyPortが使われている (http.proxyPortは無視)
- ちなみにhttp.proxyHostとproxyHostが両方ある場合は、http.proxyHostが優先される (proxyHostは無視)
非常に実装仕様くさい気がするんですが、どっかに詳細なドキュメントってありましたっけ?