オーケストレーション内のプリミティブ型を使用してWebサービスを呼び出すと、 - 要求メッセージをマップすることはできません。
-
24-09-2019 - |
質問
私はこの問題に実行していますよ。 Webサービスは、SOAP WebサービスとしてSAPによって公開さabapiある、と私は呼びたいWebメソッドのシグネチャは次のようなものです。
Operation(param1 as System.String, param2 as System.String, param3 ArrayOfSomeClass)
私はスキーマを参照してください。私は「ArrayOfSomeClass」と「工ass」が生成されたことに気づい生成しました。しかし、私は、全体の要求を表す任意のスキーマが表示されません。 私は、また、ウェブのポートタイプが生成されたことに気付き、その要求メッセージがマルチパートメッセージとして表されます。このメッセージの部分は、すべてのスカラーパラメータ(PARAM1、PARAM2)とを含む配列。
私は、私はちょうど割り当て形状を使用すると、コードによってメッセージを埋めることができます知っているが、これは、私は、Webサービス要求に別のメッセージをマッピングしたいと思いますので、私が欲しいものではありません。
これは可能ですか?いずれも、同様の問題があった?
事前に感謝します!
解決
あなたの観察が正しい、スキーマは単純型のために生成されず、その明確にここに文書化され、あなたがそのようなタイプで作業する方法について説明します。
http://msdn.microsoft.com/ EN-US /ライブラリ/ aa561724(BTS.20).aspxのの
XSDは、単純なパラメータの種類のノードが含まれていません。 あなたがWeb参照を追加し、Webメソッドは単純型であるパラメータを持っている場合には、生成されたXSDは、そのパラメータのノードは含まれていません。代わりに、生成されたマルチパートメッセージはシンプルな型である部分を含んでいます。オーケストレーションが適切にこのメッセージ部分を処理する必要があります。それは、Webサービスへの要求の一部である場合、手動でメッセージ割当形状の一部に値を割り当てます。これは、Webサービス、手動でアクセス値を参照する式形状の部分とは応答の一部である場合。
私は取得していない、あなたの第二の点
私はに別のメッセージをマッピングしたいと思います Webサービスリクエストます。