1

リクエストペイロードが次のようなWebサービスがあります

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"  xmlns:poc="http://www.poc.mbo.demo.com">
<soapenv:Header/>
<soapenv:Body>
  <poc:doTransaction>
     <!--Optional:-->
     <dealerid>1</dealerid>
     <!--Optional:-->
     <partid>1</partid>
     <!--Optional:-->
     <quantity>2</quantity>
     <!--Optional:-->
     <orderdate>12-DEC-2012</orderdate>
  </poc:doTransaction>
</soapenv:Body>
</soapenv:Envelope>

しかし、私がこのようにしようとすると、応答がありません。何が問題になる可能性がありますか

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:poc="http://www.poc.mbo.demo.com">
<soapenv:Header/>
<soapenv:Body>
   <poc:doTransaction>
     <!--Optional:-->
      <poc:dealerid>1</poc:dealerid>
      <!--Optional:-->
     <poc:partid>1</poc:partid>
     <!--Optional:-->
     <quantity>2</quantity>
     <!--Optional:-->
     <poc:orderdate>12-DEC-2012</poc:orderdate>
  </poc:doTransaction>
 </soapenv:Body>
</soapenv:Envelope>
4

2 に答える 2

0

最初のサンプルのdoTransaction要素はhttp://www.poc.mbo.demo.com名前空間にありません。

リクエストは検証に失敗するか(検証が有効になっていると仮定)、サーバーは無効な要素を無視し、リクエストを次と同等として扱います。

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"  
    xmlns:poc="http://www.poc.mbo.demo.com">
<soapenv:Header/>
<soapenv:Body>
  <poc:doTransaction />
</soapenv:Body>
</soapenv:Envelope>
于 2012-07-06T12:48:27.300 に答える
0

サービスの WSDL に従って、要素は名前空間 (XSD) に関連付けられますが、他の要素は別の名前空間 (XSD) の一部である可能性があります。

それを明確に理解するには、WSDL のタイプ セクションと操作を確認し、どのタイプ (要素) がどの XSD に関連付けられているかを確認します。失敗していることを簡単に理解できます。

名前空間をインポートされたクラスと考えて、状態の 1 つとして型を指定します(:) 簡単に理解できるように)

于 2012-07-06T13:51:07.943 に答える