0

業界標準の wsdls を持ついくつかのサービスのプロキシを作成しています。このプロジェクトの目標は、形式に関係なく、すべての参加者がプロキシにリクエストを送信することです。メッセージをラップして、目的のターゲットに送信します。

しかし、標的が誰なのかを突き止めることは困難な問題になっています。追加の SOAP ヘッダーを含めるように WSDL を変更することを検討しましたが、よく知られている業界の wsdl をできるだけ変更したくありません。

私が持っている他のオプションは、いくつかの変数を含むエンドポイントを使用することです。/<network>/<service>/サービスの既存のエンドポイント スキームです。これを作成したいのですが、実際のコード内で for ロジック/<network>/<service>/<target>/のみを使用してください。<target>それらは可変であるため、それぞれに個別のエンドポイントを設定したくありません<target>。その内容が何であれ、同じサービスと wsdl になります。

/<network>/<service>/*/有効な方法で SOAP エンドポイントを定義する方法を見つけることができませんでした。これは可能ですか?もしそうなら、それを行う最善の方法は何ですか?

4

1 に答える 1

0

ヘッダー セクションを使用して、ルーティング情報とユーザー ID、および一般的なメタデータを格納します。

しかし、それをしたくない場合は、WS-Addressingが適切でしょうか? 少なくとも標準化されています。それでもヘッダーが必要だと思います。

「Web サービス エンドポイントは、Web サービス メッセージの対象となる (参照可能な) エンティティ、プロセッサ、またはリソースです。エンドポイント参照は、Web サービス エンドポイントを識別/参照するために必要な情報を伝達し、いくつかの異なる方法で使用できます: エンドポイント参照Web サービス エンドポイントにアクセスするために必要な情報を伝達するのに適していますが、Web サービスとの間で送受信される個々のメッセージのアドレスを提供するためにも使用されます. この最後の使用例に対処するために、この仕様では、一様なメッセージ情報ヘッダーのファミリーを定義しています。基礎となるトランスポートに依存しないメッセージのアドレス指定。これらのメッセージ情報ヘッダーは、送信元エンドポイントと宛先エンドポイントのアドレス指定、およびメッセージ ID を含む、エンドツーエンドのメッセージ特性を伝達します。」

于 2013-04-15T19:46:49.703 に答える