2017-07-29 6 views
0

SOAP UIで全く同じwsdl(xsdファイルを含む)を使用し、これをDotnet(C#)のサービス参照として追加する場合と比較して、別のエンベロープを取得しています。なぜこのようなことが起こるのか?SOAPUIとC#Service Reference:異なるエンベロープ

SOAPUI '

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://test.com/common/message/header/2" xmlns:wsa=" http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wssu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> 
    <soapenv:Header> 
     <ns:TestHeader> 
      <Afield>value</ Afield> 
     </ns:TestHeader> 

`

DOTNET '

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"> 
    <s:Header> 
     <h:TestHeader xmlns:h="http://test.com/common/message/header/2" xmlns="http://jlrint.com/common/message/header/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
     <Afield xmlns=""></ Afield> 
</h:TestHeader 

`

  • ご覧のとおり、多くの属性は異なるノードで宣言されています。 DOTNET

中(空である)余分のattrとして遠く あなたが見ることができるようにノード内の名前空間が

  • 異なる
  • 、フィールド事前にありがとうございます!

  • 答えて

    0

    プログラムでは、同じように見えます。 SoapUIはJavaで、WCFテストクライアントはdotnetなので、2つの異なる言語が異なる字下げでxmlを出力する理由、または縮小されたJavaScriptがきれいに印刷されたjavascriptと同じように動作する理由を尋ねることができます。

    xml catを使用することができますが、それぞれが正しく解析され、いずれかの言語で書かれたサーバは、ここに表示されているいずれかのフォーマットを受け取ると、正しく解析して同様に処理します。 。面白いことに、要素名は同じです - デフォルトと特定の階層的な名前のスペーシングのエイリアシングとアレンジは可変で比較的重要ではありません。

    関連する問題