6

私は JAX-WS を持っており、@WebServiceProviderSOAP 1.1 と 1.2 の両方のプロトコルをサポートしたいと考えています。SOAPMessage適切なバージョンのレスポンスの作成を手動で処理します。1.1 プロトコルと 1.2 プロトコルの両方のバインディングを記述した WSDL があります。ただし、サービス エンドポイントは一度にどちらかのバージョンしかサポートできません。

解決策または不可能であると述べられているドキュメントへのポインタをいただければ幸いです。

PS私は、JAX-WS 2.0(Axis2ベース)にバンドルされているWebSphere 7アプリサーバーを使用しています

4

2 に答える 2

1

私は同じ問題を経験しました。@BindingType(value = SOAPBinding.SOAP12HTTP_BINDING)私にとっての主な問題は、クラスを と の両方でコンパイルできないこと@BindingType(value = SOAPBinding.SOAP11HTTP_BINDING)です。このhttp://www-01.ibm.com/support/docview.wss?uid=swg1PK96819と、このhttp://www-01.ibm.com/support/docview.wss?uid=swg1PK83482@BindingType(SOAPBinding.SOAP_HTTP_BINDING)をご覧ください。両方の SOAP バージョンを配信するように設定できるはずです。残念ながら、私は理解していない Websphere ランタイム環境でもコンパイルしませんでした。

于 2013-10-10T09:10:27.650 に答える
0

私は最近、(WebSphere v7.0 で) サービスに対して SOAP 1.1 と 1.2 の両方を同時に有効にしようとすることに関連するサービス展開の問題に対処しました。残念ながら、あなたの質問は特定の解決策を提供するのに十分な情報を提供しているとは思いません。

両方のバインディングを同時にサポートすることは可能ですが、いくつかの考慮事項があります。主なことは、サーバーがバインディングごとに個別のエンドポイント (URL) をリッスンできる必要があることだと思います。私が知る限り、これには web.xml および/または webservices.xml 構成ファイルに適切なエントリが必要です。

注釈ベースのサービスの場合、これらの構成エントリは理論的にはオプションです。ただし、「オプション」の構成エントリを使用せずに特定のサービスに対して複数のバインドを有効にしようとすると、WAS Axis2 拡張機能が失敗し、さまざまな例外が発生する可能性があります。

wsdl、web.xml と webservices.xml の関連部分 (存在する場合)、および展開とアプリケーションの起動中に WAS ログに報告されたエラー メッセージについて詳しく教えていただければ、おそらくより良い答えを出します。

于 2013-03-19T00:11:24.553 に答える