0

入手した既存のWSDLからJavaでWSクライアントを実装しました。
接続してWSメソッドを呼び出すことができ、すべてがうまく機能します。
しかし....
私は通信にプロキシを使用することになっています!!!

すでにそれを行うための多くの方法を試しましたが、何も機能しません:

Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("host",Integer.parseInt("8008")));
URL url = new URL(theUrl);  

HttpURLConnection uc = (HttpURLConnection)url.openConnection(proxy); uc.connect();

または私は試しました

System.setPropertry(String, String)

したがってhost、andproxyproxySet=trueを設定できます。

しかし、同僚によると、これはグローバルプロパティを設定し、システム内の多くの個別の実行では機能しないため、私がすべきことではありません。

私がこれをどのように行うべきかについてのアイデアはありますか?
助けてくれて
ありがとう

4

1 に答える 1

0

最終的に、クラスを使用して拡張java.net.ProxySelectorし、それを呼び出しましょうMyProxySelector.java
。実装されたselect()メソッドで、URIをチェックします。プロキシを介して接続するURI I、つまりWebサービスのURIである場合は、プロキシを作成します。

SocketAddress addr = new InetSocketAddress(theHost, thePort);
proxy = new Proxy(Proxy.Type.HTTP, addr);

プロキシリストに追加します。

List<Proxy> proxyList = new ArrayList<Proxy>();
proxyList.add(proxy);

プロキシリストを返します。

于 2012-12-07T13:50:54.480 に答える