上下文: BizTalk 2010试图调用不返回响应的单向(即发即忘) PeopleSoft服务。我已经证实BizTalk 2010在设计上不支持单向服务。Unable to call one way Peoplesoft service with WCF-Adapter from BizTalk 2010
PeopleSoft团队向我展示了他们的异步服务返回以下Http状态和标头。
HTTP/1.1 200 OK
Date: Thu, 20 Jan 2011 15:31:37 GMT
Content-Length: 0
Content-Type: text/xml; charset=UTF-8
TransactionID: <some GUID>
X-Powered-By: Servlet/2.5 JSP/2.1但是,当我查看从BizTalk 2010发布的单向WCF服务返回的xml时,我看到了以下内容
HTTP/1.1 200 OK
Content-Length: 86
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.0
X-Powered-By: ASP.NET
Date: Thu, 20 Jan 2011 15:34:32 GMT
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body/></s:Envelope>请注意空的SOAP消息。
因此,BizTalk 2010需要有一个非空响应才能调用服务。BizTalk不会将发回上述状态代码的PeopleSoft服务视为确认。
对吗?
谢谢。
发布于 2011-01-22 02:38:54
看起来BizTalk 2010确实需要一个非空响应才能调用服务。感谢Ben的确认。
请参阅详细信息here。
发布于 2011-01-21 04:47:05
如果web服务没有返回响应,则需要返回HTTP 204 - No Content。我还没有在WCF中尝试过这一点,但是HTTP支持无内容返回代码。至于BizTalk的WCF服务...不知道为什么它不使用204。但是由于它使用的是200,所以它需要发送一些东西。
发布于 2011-01-21 22:20:40
您发送的消息的性质是什么?理论上,您可以发送单向HTTP消息并在单独的HTTP响应端口上进行关联。
https://stackoverflow.com/questions/4749377
复制相似问题