0

私は非常にイライラする問題を抱えています。JAX WS アノテーションと Endpoint.publish(...) トリックで作成された Web サービスがあります。もちろん、com.sun.net.HttpServer を使用します。Visual Studio でサービス参照を追加しようとしても動きません。サーバーは次のように述べています。

サポートされていないコンテンツ タイプ: text/xml のみが受け入れられます

しかし、.net は application/soap+xml content-type で要求します。

jax wsでコンテンツタイプを変更するにはどうすればよいですか? または、ビジュアルスタジオのコンテンツタイプを変更するにはどうすればよいですか?

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

4

1 に答える 1

2

ググった後、私は見つけました...

やあ、

問題を解決しました。

'application/soap+xml' は SOAP 1.2 メッセージに使用されるコンテンツ タイプですが、text/xml は SOAP 1.1 に使用されます。したがって、クライアントは SOAP 1.2 要求を送信し、サービスは SOAP 1.1 のみを予期します。

Metro はデフォルトで SOAP 1.1 を使用します。SOAP 1.2 バインディングを有効にする方法は、次の場所で説明されて ます

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

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

@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"); 
于 2011-01-10T15:57:40.363 に答える