質問

私には非常にイライラする問題があります。 Jax WS AnnotationsとEndpoint.Publish(...)Trickで作成されたWebサービスがあります。もちろん、com.sun.net.httpserverを使用しています。 Visual Studioにサービスリファレンスを追加しようとすると、動きません。サーバーは言う:

サポートされていないコンテンツタイプ:受け入れられたテキスト/XML

しかし、.NETはアプリケーション/SOAP+XMLコンテンツタイプを要求します。

JAX WSのコンテンツタイプを変更するにはどうすればよいですか?または、Visual Studioのコンテンツタイプを変更するにはどうすればよいですか。

ありがとうございました。とてもイライラします!

役に立ちましたか?

解決

グーグルの後、私は見つけました...

やあ、

私は問題を解決しました。

「アプリケーション/SOAP+XML」はSOAP 1.2メッセージに使用されるコンテンツタイプですが、Text/XMLはSOAP 1.1に使用されます。したがって、クライアントはSOAP 1.2リクエストを送信し、サービスはSOAP 1.1のみを期待します。

MetroはデフォルトでSOAP 1.1を使用します。石鹸1.2バインディングを有効にする方法については、ここで説明します。- http://forums.java.net/jive/thread.jspa?messageid=322894 - https://metro.dev.java.net/1.4/docs/soap12.html

参照. 。お役に立てれば :)

編集: 以下の注釈を試してみてください...

@WebService 
@BindingType(javax.xml.ws.soap.SOAPBinding.SOAP12HTTP_BINDING) 

また

Endpoint endpoint = Endpoint.create("http://java.sun.com/xml/ns/jaxws/2003/05/soap/bindings/HTTP/", impl); 
endpoint.publish("http://localhost:9080/PatientDiscovery"); 
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top