0

Salesforce で作成した Web サービスへの SOAP リクエストでいくつかのテストを行ったところ、返されたレスポンスが次の形式であることに気付きました。

私が呼び出したリクエスト関数は GetMsgRQ であることに注意してください

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"     xmlns="http://soap.sforce.com/schemas/class/MyIntegrationServices">
<soapenv:Body>
<GetMsgRQResponse>
<result>
        <acctId>001J000000leVpEIAU</acctId>
        <acctName>MyTest</acctName>
     </result>
  </lGetMsgRQResponse>
 </soapenv:Body>
</soapenv:Envelope>

これに関連して、SOAP:Header を追加することは可能でしょうか? また、応答が要素「GetMsgRQResponse」を作成したことにも注意してください (「応答」を「GetMsgRQ」に追加します。これが発生せずに SOAP:Body を作成/指定することは可能ですか? SOAP 本文全体の応答がどうなるかを設定することはできますか? Salesforce は常にここに「GetMsgRQResponse」や「response」などの追加要素を追加しますか?

これについて何か助けてくれてありがとう。HTTP リクエストを使用して完全な SOAP エンベロープを送信できることはわかっていますが、私の要件では、そうする代わりにレスポンスを提供するだけで済みます。

4

1 に答える 1

0

Apex で定義された WebService メソッドに任意の種類の SOAP ヘッダーを直接追加できるとは思えません。

他に選択肢がまったくない場合は、REST Web サービスを介して (@RestResource アノテーションを介して) 独自のカスタム SOAP 応答を構築することもできますが、それはかなり見苦しい解決策です。

于 2013-07-08T04:55:11.070 に答える