httpsを使用してJAX-WSを使用してWebサービス(C#で開発された)を呼び出そうとしています。私はSoapUIを通して呼び出しをセットアップしようとしましたが、これはうまくいきます。https urlを持つJax-wsがHTTPとして終了する
しかし、生成されたjax-wsクライアントで同じことをしようとすると、私が得るのは301応答です。これは、同じサービスへのhttp urlを使用してSoapUIを使用する場合と同様です。また、wiresharkはHTTP(HTTP/XML)POST操作を実行することを示しています。これは何らかの理由で、私の生成したJAX-WSクライアントがhttpsの代わりにhttpを使って呼び出しようとしていることを信じさせます。
Examplifiedコード:
new MyServiceInterface(new URL("https://acme.com/services/MyService.svc?wsdl"))
.getMyPort().test();
あなたが見ることができるように、私のクライアントを作成するときに、私はhttps
URLを指定します。 JAX-WSがhttpsを使用するために必要なことはありますか?名前空間URIはすべてhttpですが、これは問題を引き起こす可能性がありますか?
更新:
私はここに受け入れ答えからガイドを使用してquesitonにサービスのSOAP要求を実装している:Working Soap client example ほとんどがSOAPUIからの情報を繰り返し、今では私に適切な200を与えます応答。
アップデート2:私のJAX-WSクライアントをデバッグする場合
、私は、このプロパティを見つける:
"javax.xml.ws.service.endpoint.address" -> "http://acme.com/services/MyService.svc"
これは、http、httpsのないを持っています。関連性?
アップデート3:
httpではなく、HTTPS URLに "javax.xml.ws.service.endpoint.address" を変更するデバッガを使用して、私のクライアントが動作します。しかし、なぜhttpで始まるのですか?
は、サーバー側の問題のように見えます。サーバにポート443でアクセスできるかどうか試してみてください。 – Stefan
SoaPUIが動作するので、私はサーバもうまく動作すると思いますか? – Tobb