Preventing BizTalk from emitting a "To" Soap header in an outgoing request to a WCF BasicHttp service
Using BizTalk 2010 to consume a WCF webservice with BasicHttp binding.
My service is rejecting the requests coming from BizTalk. 开发者_StackOverflow社区I can see using tracing and soapUI that the reason is the "To" header emitted by BizTalk in the outgoing message:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<To s:mustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">http://biztalk01:81/StuffServices.svc</To>
</s:Header>
<s:Body>
<ns0:GetMyStuff xmlns:ns0="http://example.com/stuff" xmlns:ns1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<ns0:inputArray>
<ns1:string>80220</ns1:string>
</ns0:inputArray>
</ns0:GetMyStuff >
</s:Body>
</s:Envelope>
This request gives a fault back both in BizTalk and in soapUI, but if I try in soapUI to send the exact same request without the To header (deleting the "<To s:mustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none"
>http://biztalk01:81/StuffServices.svc
"), then it works fine and returns the correct response.
Thus my question: what are my options to make BizTalk not emit that "To" soap header in that outgoing request?
Actually that header was never in the request sent by BizTalk, it was added by WCF tracing in the log. Using Fiddler to capture the real request sent allowed me to see that the problem was elsewhere. It's possible to get the BizTalk query to go through fiddler by adding the proxy http://127.0.0.1:8888 in the binding configuration of the send port.
精彩评论