私は現時点で何の公式も見つけられません。あなたのXMLが不正であれば、経験に基づいて400のHTTPが得られ、SOAPメッセージに何らかの値がないとSOAPのエラーメッセージが出ます。
HTTPは、SOAPサービスで使用される1つのプロトコルです。必要に応じて、STMP(電子メール)やその他のプロトコルを使用してSOAPサービスを実行できます。 HTTPは単なるトランスポートです。したがって、これらの特定のHTTPを標準化文書に含める必要はありません。 SOAP用語のHTTP 400は、本当に悪いメッセージが配信できないことを意味します。
例えば以下のような不正な形式のXMLがHTTP 400与える必要があります:私のメッセージ以下の例では
<nonsense> <!-- opening tag with no closing tag-->
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ecol="http://www.blahblahablha">
<soapenv:Header/>
<soapenv:Body>
<ecol:GetDatabaseConnectionInfo/>
</soapenv:Body>
</soapenv:Envelope>
は、XMLが正しく形成されているため、障害がある?
の値を持つGUIDを持っていますメッセージはSOAP障害メッセージで返されます。これを送信
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ec="http://www.blahablha.au/foo" xmlns:irix="http://www.blahblah/IRIX_Headers_V1" xmlns:irix1="http://schemas.datacontract.org/2004/07/IRIXContract.MsgHeaderBase">
<soapenv:Header/>
<soapenv:Body>
<ec:GetAccountActiveArrangement>
<ec:GetAccountActiveArrangementReq>
<irix:MsgReqHdr>
<!--Optional:-->
<irix:MsgGUID>?</irix:MsgGUID>
<!--Optional:-->
<irix:MsgDateTime>?</irix:MsgDateTime>
<!--Optional:-->
<irix:SecCredInfo>
<!--Optional:-->
<irix:IRIXUserID>?</irix:IRIXUserID>
<!--Optional:-->
<irix:IRIXPassword>?</irix:IRIXPassword>
<!--Optional:-->
<irix:AuthToken>?</irix:AuthToken>
<!--Optional:-->
<irix:ConsumerSystemID>?</irix:ConsumerSystemID>
</irix:SecCredInfo>
</irix:MsgReqHdr>
<ec:accountNumber>70001</ecol:accountNumber>
</ec:GetAccountActiveArrangement>
</soapenv:Body>
</soapenv:Envelope>
は、次のエラーが発生:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<s:Fault>
<faultcode xmlns:a="http://schemas.microsoft.com/net/2005/12/windowscommunicationfoundation/dispatcher">a:DeserializationFailed</faultcode>
<faultstring xml:lang="en-AU">The formatter threw an exception while trying to deserialize the message: There was an error while trying to deserialize parameter http://www.blah blah/ECollNXDB_V1:GetAccountActiveArrangementReq. The InnerException message was 'There was an error deserializing the object of type IRIXNXSoapServices.Message.Operations.Account.Get.GetAccountActiveArrangementReqV1. The value '?' cannot be parsed as the type 'Guid'.'. Please see InnerException for more details.</faultstring>
<detail>
<ExceptionDetail xmlns="http://schemas.datacontract.org/2004/07/System.ServiceModel" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<HelpLink i:nil="true"/>
<InnerException>
<HelpLink i:nil="true"/>
<InnerException>
<HelpLink i:nil="true"/>
<InnerException>
<HelpLink i:nil="true"/>
<InnerException i:nil="true"/>
<Message>Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).</Message>
は、これは標準的な動作です。