2012-04-24 28 views
4

内部イントラネットWebサービスに接続する必要があります。私の会社はプロキシサーバーを使ってインターネットにアクセスしますが、イントラネットサイトはプロキシを経由しません。私はIEとFirefoxでWSDLにナビゲートすることができますが、両方のブラウザでプロキシ例外リストにアドレスを追加する必要があります。プロキシ例外URLを使用するようにwsimportに指示するには

wsimportを使用すると、プロキシサーバーが原因でWSDLを取得できません。 -httpproxy argを追加または削除すると、「プロキシをトンネルできません」というエラーが表示されるため、これを行う必要はありません。

私はこのURLのプロキシサーバーを無視するwsimportに伝える方法を知っていますか?

ニール

答えて

7

からANSERを得た

-Djava.net.useSystemProxies=true 

私は内部(イントラネット)URLのプロキシを使用してwsimportのを使用して外部URL(w3c.com)のプロキシをスキップする方法を探して、このポストに到着しました。 exe(JDK 1.6,1.7などの一部)私はそれがnonProxyHostsを置くための施設を持っていないことを知っているので、私は先に進み、Javaクラスの呼び出しを使用しました。読みやすくするために、この

java -Dhttp.proxyHost=proxyServer -Dhttp.proxyPort=9000 -Dhttp.nonProxyHosts="localhost|*.intranet-domain.com" -classpath %JAVA_HOME%\lib\tools.jar com.sun.tools.internal.ws.WsImport -p com.ws.client.pkg http://app.intranet-domain.com/endpoint?wsdl 

よう

何か:

java 
    -Dhttp.proxyHost=proxyServer 
    -Dhttp.proxyPort=9000 
    -Dhttp.nonProxyHosts="localhost|*.intranet-domain.com" 
    -classpath %JAVA_HOME%\lib\tools.jar 
    com.sun.tools.internal.ws.WsImport 
    -p com.ws.client.pkg 
    http://app.intranet-domain.com/endpoint?wsdl 

「-Dhttp.nonProxyHosts」あなたが前にその行でプロキシを設定している場合にのみ機能しますが、あなたはすべての必要があることに注意してくださいパラメータ。したがって、デフォルトのプロキシを無効にしたいだけなら、ここで再度設定する必要があります。

+0

too- wsimportのオプションの--httpproxyオプションを使用することができますが、それがあまりにも多く、それを元に戻す気軽にご投稿を変える感じる場合、私は、最後の段落を追加しました。 –

+1

ありがとう!私は 'https.proxyHost'を設定するためにこれを必要としました。 – jpaugh

0

アプローチはうまくいきます特定のURLにプロキシを使用してから、ProxySelectorクラスを参照してください。 ProxySelectorをプロキシホストとポートで拡張し、デフォルトのプロキシセレクタとして設定する独自のプロキシセレクタクラスを作成できます。このスレッドHow can I use an HTTP proxy for a JAX-WS request without setting a system-wide property?をUncle Irohの回答で見てください。何が起こっているかを明確に説明するProxyselectorの詳細については、http://docs.oracle.com/javase/7/docs/technotes/guides/net/proxies.htmlをご覧ください。

関連する問題